您的位置:首页 > 其它

Codeforces 631B Print Check【模拟】

2016-03-12 10:09 141 查看

题意:

按顺序给定列和行进行涂色,输出最终得到的方格颜色分布。

分析:

记录下涂的次序,如果某个元素的横和列都被涂过,那么就选择次序最大的颜色。

代码:

#include<iostream>
#include<cstdio>
using namespace std;
const int maxn = 5005;
int num[maxn][maxn];
int ma[2][maxn];
int ro[maxn], ca[maxn];
int main (void)
{
int n, m, k;cin>>n>>m>>k;
int a, b, c;
for(int i = 1; i <= k; i++){
cin>>a>>b>>c;
if(a == 1){
ro[b] = c;
ma[0][b] = i;
}
else{
ca[b] = c;
ma[1][b] = i;
}
}
for(int i = 1; i <= n; i++){
for(int j = 1; j <= m; j++){
int a = 0;
if(ma[0][i] > ma[1][j]) a = ro[i];
else a = ca[j];
printf("%d%c",a, j == m?'\n':' ');
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: