AC

せいしゅん404  •  3年前


#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; 
}


评论:

请先登录,才能进行评论