/* 2차원 배열 1-7 특수 형태를 먼저 저장하고 순서대로 출력하라
#include <stdio.h>
int main ()
{
int i, j, k=1, a[100][100],n,m;
scanf("%d %d", &n, &m);
for (j=m-1;j>=0;j--)
{
for (i=n-1;i>=0;i--)
{
a[i][j]=k;
k=k+1;
}
}
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
} return 0;
}
*/
/* 2차원 배열 1-8
#include <stdio.h>
int main()
{
int i, j, k=1, n, m, a[100][100];
scanf("%d %d", &n, &m);
for (j=m-1;j>=0;j--)
{
for (i=0;i<n;i++)
{
a[i][j]=k;
k=k+1;
}
}
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
} return 0;
}
*/
// 짝수층 정상 저장 홀수층 거꾸로 저장
/* 2차원 지그재그 2-1
#include <stdio.h>
int main()
{
int i,j, k=1, n, a[100][100];
scanf("%d", &n);
for (i=0;i<n;i++)
{
if (i%2==1)
{
for (j=n-1;j>=0;j--)
{
a[i][j]=k;
k=k+1;
}
}
else
{
for (j=0;j<n;j++)
{
a[i][j]=k;
k=k+1;
}
}
}
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/* 즉각즉각 프린트는 왜안됌?
#include <stdio.h>
int main()
{
int i,j, k=1, n, a[100][100];
scanf("%d", &n);
for (i=0;i<n;i++)
{
if (i%2==1)
{
for (j=n-1;j>=0;j--)
{
a[i][j]=k++;
printf("%d ", a[i][j]);
} printf("\n");
}
else
{
for (j=0;j<n;j++)
{
a[i][j]=k++;
printf("%d ", a[i][j]);
} printf("\n");
}
}
}
*/
/*코드업 오류, 푼거임*/
/*
#include <stdio.h>
int main ()
{
int i, j, k=1, a[105][105], n;
scanf("%d", &n);
for (i=0;i<n;i++)
{
if (i%2==1)
{
for (j=0;j<n;j++)
{
a[i][j]=k++;
}
}
else
{
for (j=n-1;j>=0;j--)
{
a[i][j]=k++;
}
}
}
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/* 지그재그 2-3
#include <stdio.h>
int main ()
{
int i, j, k=1, a[100][100], n;
scanf("%d", &n);
for (j=0; j<n; j++)
{
if (j%2==1)
{
for (i=n-1; i>=0; i--)
{
a[i][j]=k++;
}
}
else
{
for (i=0;i<n;i++)
{
a[i][j]=k++;
}
}
}
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/*
#include <stdio.h>
int main()
{
int i, j, k=1, n, a[100][100];
scanf("%d", &n);
for (j=0;j<n;j++)
{
if (j%2==1)
{
for (i=0;i<n;i++)
{
a[i][j]=k++;
}
}
else
{
for (i=n-1;i>=0;i--)
{
a[i][j]=k++;
}
}
}
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/* 지그재그 2-5
#include <stdio.h>
int main()
{
int i, j, k=1, m, n, a[100][100];
scanf("%d %d", &n, &m);
for (i=n-1;i>=0;i=i-2)
{
for (j=m-1;j>=0;j--)
{
a[i][j]=k++;
}
for (j=0;j<m;j++)
{
a[i-1][j]=k++;
}
}
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/* 2-6 지그재그 채우기
#include <stdio.h>
int main()
{
int i, j, k=1, m, n, a[100][100];
scanf("%d %d", &n, &m);
for (i=n-1;i>=0;i=i-2)
{
for (j=0;j<m;j++)
{
a[i][j]=k++;
}
for (j=m-1;j>=0;j--)
{
a[i-1][j]=k++;
}
}
for (i=0;i<n;i++)
{
for (j=0;j<m;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/* 코드업 에러 푼거임 지그재그 2-7*/
////#include <stdio.h>
////int main()
////{
//// int i, j, k=1, m, n, a[100][100];
//// scanf("%d %d", &n, &m);
//// for (j=m-1;j>=0;j=j-2)
//// {
//// for (i=n-1;i>=0;i--)
//// {
//// a[i][j]=k++;
//// }
//// for (i=0;i<n;i++)
//// {
//// a[i][j-1]=k++;
//// }
//// }
////
////
//// for (i=0;i<n;i++)
//// {
//// for (j=0;j<m;j++)
//// {
//// printf("%d ", a[i][j]);
//// } printf("\n");
//// }
////}
///////////////////////////////////////
/*
#include <stdio.h>
int main()
{
int i, j, k=1, a[100][100], n, m;
scanf("%d %d", &n, &m);
for (j=0;j<m;j++)
{
if (j%2==0)
{
for (i=0;i<n;i++)
{
a[i][j]=k++;
}
}
else
{
for (i=n-1;i>=0;i--)
{
a[i][j]=k++;
}
}
}
for (i=0;i<n;i++)
{
for (j=m-1;j>=0;j--)
{
printf("%d ",a[i][j] );
} printf("\n");
}
}
*/
/* 나도 아이큐 150
#include <stdio.h>
int main()
{
int i, j, n,a[21][21];
scanf("%d", &n);
for (i=0;i<n;i++)
{
scanf("%d", &a[i][0]);
}
for (i=1;i<n;i++)
{
for (j=1;j<i+1;j++)
{
a[i][j]=a[i][j-1]-a[i-1][j-1];
}
}
for (i=0;i<n;i++)
{
for (j=0;j<i+1;j++)
{
printf("%d ", a[i][j]);
} printf("\n");
}
}
*/
/*말게임 진격 후 결과
#include <stdio.h>
int main()
{
int i, j, a[11][11];
for (i=0; i<11; i++)
{
for (j=1; j<11; j++)
{
scanf("%d", &a[i][j]);
}
}
for (j=1; j<11; j++)
{
if (a[10][j]==1) //말 있을때
{
for (i=9;i>=0;i--)
{
if (a[i][j]>0)
{
printf("%d crash", j);
printf("\n");
break;
}
else if(a[i][j]<0)
{
printf("%d fall", j);
printf("\n");
break;
}
if (i==0)
{
printf("%d safe", j);
printf("\n");
}
}
}
} return 0;
}
*/
/*
#include <stdio.h>
int main()
{
int i, j, k=1, a[100][100], n,chd=0;
scanf("%d", &n);
for (i=0;i<n;i++)
{
for (j=0;j<n;j++)
{
a[i][j]=k++;
}
}
for (j=0;j<n;j++)
{
chd=chd+a[0][j]+a[n-1][j];
}
for (i=1;i<n-1;i++)
{
chd=chd+a[i][0]+a[i][n-1];
}
printf("%d", chd);
}
*/
/* 숫자등고선
#include <stdio.h>
int main()
{
int i, j,a[100][100]= {0}, x, y, n,k=1;
scanf("%d %d %d", &n, &x, &y);
x--;
y--;
a[x][y]=1;
for (i=x+1; i<n; i++)
{
a[i][y]=a[x][y]+k;
k++;
}
k=1;
for (i=x-1; i>=0; i--)
{
a[i][y]=a[x][y]+k;
k++;
}
for (i=0; i<n; i++)
{ k=1;
for (j=y-1; j>=0; j--)
{
a[i][j]=a[i][y]+k;
k++;
}
k=1;
for (j=y+1; j<n; j++)
{
a[i][j]=a[i][y]+k;
k++;
}
}
for (i=0; i<n; i++)
{
for (j=0; j<n; j++)
{
printf("%d ", a[i][j]);
}
printf("\n");
}
}
*/
/* 생명게임1 */
/*
#include <stdio.h>
int main()
{
int i, j, map[27][27]={0}, result[26][26]={0},k;
for (i=1; i<=25; i++)
{
for (j=1; j<=25; j++)
{
scanf("%d", &map[i][j]); //입력
}
}
for (i=1; i<=25; i++)
{
for (j=1; j<=25; j++)
{
k=map[i+1][j]+map[i-1][j]+map[i][j+1]+map[i][j-1]+map[i-1][j-1]+map[i-1][j+1]+map[i+1][j-1]+map[i+1][j+1];
if (map[i][j]==1)
{
if (k==2||k==3)
{
result[i][j]=map[i][j];//생존
}
else if (k<=1||k>=4)
{
result[i][j]=0;
}
}
else
{
if (k==3)
{
result[i][j]=1;
}
}
}
}
for (i=1; i<=25; i++)
{
for (j=1; j<=25; j++)
{
printf("%d ", result[i][j]);
}
printf("\n");
}
}
*/
/* 생명게임2
#include <stdio.h>
int main()
{
int a,c,b,x,y,z, i, j,q, k, map[172][172]= {0}, result[172][172]= {0};
scanf("%d %d", &a, &b);
scanf("%d %d %d", &x, &y, &z);
for (i=1; i<=a; i++)
{
for (j=1; j<=b; j++)
{
scanf("%d", &map[i][j]);
}
}
scanf("%d", &k);
for (q=0; q<k; q++)
{
for (i=1; i<=a; i++)
{
for (j=1; j<=b; j++)
{
c=map[i+1][j]+map[i-1][j]+map[i][j+1]+map[i][j-1]+map[i-1][j-1]+map[i-1][j+1]+map[i+1][j-1]+map[i+1][j+1];
if (map[i][j]==1)
{
if (c>=y&&c<z)
{
result[i][j]=map[i][j];
}
else if (c>=z||c<y)
{
result[i][j]=0;
}
}
else
{
if (c==x)
{
result[i][j]=1;
}
}
}
}
for (i=1; i<=a; i++)
{
for (j=1; j<=b; j++)
{
map[i][j]=result[i][j];
}
}
for (i=1;i<=a;i++)
{
for (j=1;j<=b;j++)
{
result[i][j]=0;
}
}
}
for (i=1; i<=a; i++)
{
for (j=1; j<=b; j++)
{
printf("%d ", map[i][j]);
}
printf("\n");
}
}
*/