せいしゅん404 • 4年前
#include<cstdio>
#include<iostream>
using namespace std;
const int MANX=100001;
int m,n,k;
int x[MANX],y[MANX],d[MANX];
//每列数据个数
int c[MANX];
int *a[MANX];//每列一个指针,准备申请数组
int main(void){
cin>>n>>m>>k;
for(int i=0;i<k;i++){
cin>>x[i]>>y[i]>>d[i];
c[y[i]]++;
}
for(int i=1;i<=m;i++){
a[i]=new int[c[i]];//每一列申请数组空间
}
//收集k个数据到相应的列
for(int i=0;i<k;i++){
*a[y[i]]=d[i];
a[y[i]]++;//数组指针后移
}
//按列优先输出
for(int i=1;i<=m;i++){
a[i]=a[i]-c[i];
for(int j=0;j<c[i];j++,a[i]++){
cout<<*a[i]<<" ";
}
}
return 0;
}
评论:
请先登录,才能进行评论