#include <iostream>
#include <stdio.h>
using namespace std;
static int length = 0;
typedef char ElemType;
typedef struct Compress{
ElemType *data;
}*com,arr;
void init_matrix(com &com){
com = new arr[length];
for(int i=0;i<length;i++){
com[i].data = new ElemType[10];
}
}
void init_matrix(arr &arr,int num){
arr.data = new ElemType[num];
}
void compass(com& cha,arr& yasuo,int num){
length = num;
int k=0;
int compass_length = (1+length)*length/2;
init_matrix(cha);
init_matrix(yasuo,compass_length);
for(int i=0;i<length;i++){
for(int j=0;j<i+1;j++){
//cin>>cha[i][j];
cha[i].data[j] = i*j+'0';
cha[j].data[i] = cha[i].data[j];
yasuo.data[k] = cha[i].data[j];
k++;
}
}
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
cout<<cha[i].data[j]<<" ";
}
printf("\n");
}
printf("\n");
int a=0;
int sum;
}
void display_all(arr yasuo){
for(int k=0;k<55;k++){
//cout<<yasuo.data[k]<<" ";
cout<<"a["<<k<<"] = "<<yasuo.data[k]<<endl;
}
//cout<<"a["<<k<<"] = "<<yasuo.data[k]<<endl;
}
void display_appoint(arr yasuo,int x,int y){
if(y>x){
int temp;
temp = x;
x = y;
y = temp;
}
cout<<x<<y<<endl;
cout<<"a["<<x<<"]["<<y<<"]"<<endl;
cout<<"a["<<((x)*(x-1)/2)+y<<"] = "<<yasuo.data[((x)*(x-1)/2)+y]<<endl;
}
int main()
{
com c;
arr a;
compass(c,a,10);
display_all(a);
display_appoint(a,10,8);
return 0;
}