您的位置:首页 > 大数据 > 人工智能

CodeForces-509B Painting Pebbles

2015-09-17 22:13 441 查看
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>

using namespace std;

const int n_max = 100 + 5;
const int INF = 0x3fffffff;
int n, k;
int paint[n_max];

int main()
{
while(~scanf("%d %d", & n, & k))
{
int max_paint = 0;
int min_paint = INF;
for(int i = 0; i < n; i ++)
{
scanf("%d", & paint[i]);
max_paint = max(max_paint, paint[i]);
min_paint = min(min_paint, paint[i]);
}
if(max_paint - min_paint > k)
{
printf("NO\n");
continue;
}
printf("YES\n");
for(int i = 0; i < n; i ++)
{
int j = 0;
for(; j < paint[i] - 1; j ++)
printf("%d ", j % k + 1);
printf("%d\n", j % k + 1);
}
}
return 0;
}


题目

在一个桌子上,有n堆石头,之后有k种颜色。第二行输入 每堆石头的数量。接下来就是涂色了。要求一堆的石头与其他任意一堆石头所有颜色种类差<=1。判断涂色是否可以(输出NO or YES)。之后输出n堆石头的涂色结果。

题解:

水题吧。就是判断什么时候输出no即可。之后就是每堆颜色要尽可能多(1,2,3,4,5….)。接下来就是考虑输出格式..
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: