/*
#include <stdio.h>
int main()
{
int n, m, i, j, k=1;
int x[100][100]={};
scanf("%d %d", &n, &m);
for(i=n-1; i>=0; i--){
for(j=0; j<m; j++){
x[i][j]=k++;
}
}
for(i=0; i<n; i++){
for(j=0; j<m; j++){
printf("%d ", x[i][j]);
}
printf("\n");
}
return 0;
}
//입력이 3 4인 경우 다음과 같이 출력한다.
//9 10 11 12
//5 6 7 8
//1 2 3 4
*/
/*
#include<stdio.h>
int main()
{
int n, m, i, j, k=1;
int x[100][100]= {};
scanf("%d %d", &n, &m);
for(j=m-1; j>=0; j--){
for(i=n-1; i>=0; i--){//가로 세로의 크기가 다른 배열은 반복문의 위치를 변경하여 가로 세로의 위치를 변경해야 한다
x[i][j]=k++;
}
}
for(i=0; i<n; i++){
for(j=0; j<m; j++){
printf("%d ", x[i][j]);
}
printf("\n");
}
return 0;
}
//입력이 3 4인 경우 다음과 같이 출력한다.
//12 9 6 3
//11 8 5 2
//10 7 4 1
*/
/*
#include<stdio.h>
int main()
{
int n, m, i, j, k=1;
int x[100][100]={};
scanf("%d %d", &n, &m);
for(j=m-1; j>=0; j--){
for(i=0; i<n; i++){
x[i][j]=k++;
}
}
for(i=0; i<n; i++){
for(j=0; j<m; j++){
printf("%d ", x[i][j]);
}
printf("\n");
}
return 0;
}
//입력이 3 4인 경우 다음과 같이 출력한다.
//10 7 4 1
//11 8 5 2
//12 9 6 3
*/
/*
#include<stdio.h>
int main()
{
int n, i, j;
int x[100][100]={};
scanf("%d" , &n);
for(i=0; i<n; i++) {
scanf("%d", &x[i][0]);
}
for(i=1; i<n; i++){
for(j=1; j<=i; j++){
x[i][j]=x[i][j-1]-x[i-1][j-1];
}
}
for(i=0; i<n; i++) {
for(j=0; j<=i; j++) {
printf("%d ", x[i][j]);
}
printf("\n");
}
}
/// x[i][j]=x[i][j-1]-x[i-1][j-1]
//4(세로의 길이), 4, 6, 9, 19 입력시 다음과 같이 출력된다
//4
//6 2
//9 3 1
//19 10 7 6
*/