打印锯齿矩阵
锯齿矩阵是指每一行包含的元素个数不相同的矩阵,比如:
1
3 5 2 6 1
2
2 3 4
3
1 6 2 7
读入若干对整数 (x,y)(x,y),表示在第 xx 行的末尾加上一个元素 yy。输出最终的锯齿数组。初始时矩阵为空。
输入格式
第一行输入两个整数 n,m(1 \leq n,m \leq 10000)n,m(1≤n,m≤10000),其中 nn 表示锯齿数组的行数,mm 表示插入的元素总数。
接下来一共 mm 行,每行两个整数 x,y(1 \leq x \leq n, 0 \leq y \leq 10000)x,y(1≤x≤n,0≤y≤10000),表示在第 xx 行的末尾插入一个元素 yy。
输出格式
一共输出 nn 行,每行若干个用空格分隔的整数。如果某行没有任何元素,则输出一个空行。
样例输入复制
3 12
1 3
2 2
2 3
2 4
3 1
3 6
1 5
1 2
1 6
3 2
3 7
1 1
样例输出复制
3 5 2 6 1
2 3 4
1 6 2 7
#include<iostream>
#include<vector>
using namespace std;
int main(){
vector<int> T[10005];
int m,n,x,y;
cin>>n>>m;
for(int j=0;j<m;j++){
cin>>x>>y;
T[x].push_back(y);
}
for(int i=1;i<=n;i++){
for(int j=0;j<T[i].size();j++){
if(j!=T[i].size()-1)
cout<<T[i][j]<<" ";
else cout<<T[i][j];
}
cout<<endl;
}
return 0;
}