https://codeforces.com/contest/1504/problem/D


思路:

类似黑白染色。

如果给1,那么2和3空闲。优先把2放到棋盘的(i+j)的偶位。如果2满了,那就放3,注意此时3的位置其实是占了本该给1的位置的。

如果给2,那么1和3空闲。优先把1放到棋盘的(i+j)的奇位。如果1满了,那就放3,注意此时3的位置其实是占了本该给2的位置的。

如果给3,那么1和2空闲,如果1还可以放,放1,如果1不能放了,放2,2不能放了。结束。

关于交互题的输出问题。endl直接就可以了。如果还存在Idleness limit exceeded on test 。说明是由于程序问题,导致多询问了,或者多输出了怎么样。当时判棋盘的黑白块数量的时候没有/2导致一直这个问题。

注意棋盘的奇数的时候有一个块数量+1

#include<iostream>
#include<vector>
#include<queue>
#include<cstring>
#include<cmath>
#include<map>
#include<set>
#include<cstdio>
#include<algorithm>
#define debug(a) cout<<#a<<"="<<a<<endl;
using namespace std;
const int maxn=120;
typedef int LL;
inline LL read(){LL x=0,f=1;char ch=getchar();   while (!isdigit(ch)){if (ch=='-') f=-1;ch=getchar();}while (isdigit(ch)){x=x*10+ch-48;ch=getchar();}
return x*f;}
LL a[maxn][maxn];
LL n;
LL cnt1=0,cnt2=0;
LL get(){LL col;cin>>col;return col;
}
void solve1(LL col){if(col==1){for(LL j=1;j<=n;j++){for(LL k=1;k<=n;k++){if(!a[j][k]&&((j+k)%2==0)){a[j][k]=1;cnt1++;cout<<col<<" "<<j<<" "<<k<<endl;return;}}}}else if(col==2){for(LL j=1;j<=n;j++){for(LL k=1;k<=n;k++){if(!a[j][k]&& ( (j+k)&1)){a[j][k]=2;cnt2++;cout<<col<<" "<<j<<" "<<k<<endl;return;}}}}else if(col==3){for(LL j=1;j<=n;j++){for(LL k=1;k<=n;k++){if(!a[j][k]){a[j][k]=3;cout<<col<<" "<<j<<" "<<k<<endl;return;}}}}
}
int main(void){cin>>n;for(LL i=1;i<=n*n;i++){LL col=get();LL temp1=n*n/2-cnt1;if(n&1) temp1++;LL temp2=n*n/2-cnt2;if(col==3){if(temp1){solve1(1);}else if(temp2){solve1(2);}else solve1(3);}if(col==1){if(temp2){solve1(2);}else{cnt1++;solve1(3);}}if(col==2){if(temp1){solve1(1);}else{cnt2++;solve1(3);}}}return 0;
}

D. 3-Coloring(思维+构造)相关推荐

  1. Composite Coloring(思维 数论(筛素数 分解质因数))

    (29条消息) CodeForces - 1332B Composite Coloring(数论+构造)_Frozen_Guardian的博客-CSDN博客 (29条消息) codeforces 13 ...

  2. 【CodeForces - 798D】Mike and distribution (思维构造,贪心,黑科技)

    题干: Mike has always been thinking about the harshness of social inequality. He's so obsessed with it ...

  3. CodeForces - 1504C Balance the Bits(思维+构造)

    题目链接:https://vjudge.net/problem/CodeForces-1504C 题目大意:给出一个长度为 nnn 的 010101 串,现在要求构造出两个长度为 nnn 的合法括号序 ...

  4. HDU - 5573 Binary Tree(思维+构造+二进制)

    题目链接:点击查看 题目大意:给出一棵无限大的完全二叉树,每次给出一个 n 和一个 k ,要求从点 1 出发一直向下,找到一条长度为 k 的路径,对于路径上的点可以加上其编号,也可以减去其编号,需要构 ...

  5. CodeForces - 1332B Composite Coloring(数论+构造)

    题目链接:点击查看 题目大意:给出 n 个合数,每个数不超过 1000 ,现在要求给每个数涂上颜色,使得相同颜色的任意两个数的 gcd 都大于 1 ,现在问在总颜色数不超过 11 种的情况下,构造出一 ...

  6. CodeForces - 1291D Irreducible Anagrams(思维+构造)

    题目链接:点击查看 题目大意:首先规定两个字符串 s 和 t 为 Anagrams ,当且仅当字符串 t 可以通过字母重新排列后得到 s ,也就是每个字符出现的次数相同,但位置不做要求,紧接着规定另一 ...

  7. CodeForces - 125C Hobbits' Party(思维+构造)

    题目链接:点击查看 题目大意:有一个派对,现在有 n 个人参加,题目要求我们构造出一种参加方式,满足条件且可以维持的天数最大: 任意两天中至少有一个相同的人参加 任意三天中不能有一个相同的人参加 输出 ...

  8. CodeForces - 1270C Make Good(思维+构造)

    题目链接:点击查看 题目大意:给出一个由n个数字构成的数列,现在已知其累加和为sum,异或和为xor,现在允许我们向数列中添加0~3个数,以满足sum=2*xor,构造出任意一种方案 题目分析:一开始 ...

  9. CodeForces - 618B Guess the Permutation(思维+构造)

    题目链接:点击查看 题目大意:先给出一个长度为n的序列ai,这个序列是1~n全排列中的其中一种,再给出一个n*n的矩阵,maze[i][j]=val代表min(ai,aj)=val,要求我们构造出原始 ...

  10. CodeForces - 715A Plus and Square Root(思维+构造)

    题目链接:点击查看 题目大意:我们在玩一个游戏,屏幕上有一个数字,我们设这个数字为x,初始值为2,我们一开始的等级是k,我们每一次可以有两种操作: 加法:可以让x加上k 开根号:可以让x开根号,并且等 ...

最新文章

  1. 牛津大学计算机系主任:人工智能立法重在抓机遇、防危害
  2. 自定义checkbox,redio等
  3. 【转】C 编译器优化过程中的 Bug
  4. SpringBoot之使用Scheduled做定时任务
  5. 原始套接字抓取所有以太网数据包与分析
  6. Google的投票站点在用Asp.net
  7. linux 字符设备驱动cdev
  8. Struts2错误之:Could not find action or result
  9. 【Maven】运行项目
  10. java俄罗斯方块简单代码_Java简易俄罗斯方块
  11. 经纬度与度分秒相互转换
  12. linux金山打字通游戏版,金山打字游戏2010电脑版-金山打字游戏(最全大集合安装)下载V8.1.0.1官方版-西西软件下载...
  13. 深度学习声纹识别_一种基于机器学习及深度学习的声纹降噪方法及系统与流程...
  14. AD936x+ZYNQ搭建OpenWIFI
  15. 通过快递鸟如何接入韵达速递电子面单
  16. 魅族手机调试出现is waiting for debugger的问题解决
  17. vrtualbox虚拟机全屏显示
  18. 25G SFP28 SR多模和LR单模光模块的介绍及区别
  19. 用Pytorch实现RGB2LAB,LAB2RGB。
  20. python正则表达式入门

热门文章

  1. 腾达fh307没有显示服务器名,腾达(Tenda)FH307路由器无线WiFi密码和名称设置
  2. 一行代码获取android手机deviceId
  3. 单点登录(SSO) --UCenter技术实现
  4. 最好的java代码编辑器_推荐 5 款牛逼的代码编辑器
  5. 运行python文件、电脑突然黑屏_电脑运行中总是突然黑屏怎么办?
  6. TensorFlow Serving 入门教程(Windows)
  7. pytorch之transforms
  8. 我的中国“芯”——资深后端工程师成长分享——“胡”说IC工程师完美进阶
  9. android7.1刷supersu,Android怎么刷SuperSU 安卓系统刷SuperSU Pro教程
  10. 实战经验总结:为什么我不在苹果竞价广告中选择推荐词