2018年全国多校算法寒假训练营练习比赛(第一场)C 六子冲
https://www.nowcoder.com/acm/contest/67/C
思路:
模拟。
代码:
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pb push_back
#define mem(a,b) memset(a,b,sizeof(a)) int dir[][]={-,,,,,-,,};
int mp[][];
int belong[];
int inx,iny;
bool is(int x,int y,int xx,int yy){
if(x==inx&&y==iny)return true;
if(xx==inx&&yy==iny)return true;
return false;
}
int main(){
ios::sync_with_stdio(false);
cin.tie();
int cs=,n,q,p;
while(cin>>n){
for(int i=;i<=;i++){
for(int j=;j<=;j++)mp[i][j]=;
}
mp[][]=;mp[][]=;mp[][]=;mp[][]=;
mp[][]=; mp[][]=;
mp[][]=; mp[][]=;
mp[][]=;mp[][]=;mp[][]=;mp[][]=;
for(int i=;i<=;i++)belong[i]=;
for(int i=;i<=;i++)belong[i]=;
while(n--){
cin>>q>>p;
for(int i=;i<=;i++){
bool f=false;
for(int j=;j<=;j++){
if(mp[i][j]==q){
mp[i][j]=;
f=true;
inx=i+dir[p-][];
iny=j+dir[p-][];
//cout<<inx<<" "<<iny<<endl;
mp[inx][iny]=q;
break;
}
}
if(f)break;
}
for(int i=;i<=;i++){
if(is(i,,i,)&&mp[i][]>&&belong[mp[i][]]==belong[mp[i][]]&&belong[mp[i][]]!=belong[mp[i][]]&&mp[i][]==)mp[i][]=;
if(is(i,,i,)&&mp[i][]>&&belong[mp[i][]]==belong[mp[i][]]&&belong[mp[i][]]!=belong[mp[i][]]&&mp[i][]==)mp[i][]=;
if(is(i,,i,)&&mp[i][]>&&belong[mp[i][]]==belong[mp[i][]]&&belong[mp[i][]]!=belong[mp[i][]]&&mp[i][]==)mp[i][]=;
if(is(i,,i,)&&mp[i][]>&&belong[mp[i][]]==belong[mp[i][]]&&belong[mp[i][]]!=belong[mp[i][]]&&mp[i][]==)mp[i][]=;
}
for(int i=;i<=;i++){
if(is(,i,,i)&&mp[][i]>&&belong[mp[][i]]==belong[mp[][i]]&&belong[mp[][i]]!=belong[mp[][i]]&&mp[][i]==)mp[][i]=;
if(is(,i,,i)&&mp[][i]>&&belong[mp[][i]]==belong[mp[][i]]&&belong[mp[][i]]!=belong[mp[][i]]&&mp[][i]==)mp[][i]=;
if(is(,i,,i)&&mp[][i]>&&belong[mp[][i]]==belong[mp[][i]]&&belong[mp[][i]]!=belong[mp[][i]]&&mp[][i]==)mp[][i]=;
if(is(,i,,i)&&mp[][i]>&&belong[mp[][i]]==belong[mp[][i]]&&belong[mp[][i]]!=belong[mp[][i]]&&mp[][i]==)mp[][i]=;
}
/*for(int i=1;i<=4;i++){
for(int j=1;j<=4;j++){
cout<<setw(3)<<mp[i][j];
}
cout<<endl;
}*/
}
cout<<"#Case "<<++cs<<":"<<endl;
for(int i=;i<=;i++){
for(int j=;j<=;j++){
cout<<setw()<<mp[i][j];
}
cout<<endl;
}
}
return ;
}
2018年全国多校算法寒假训练营练习比赛(第一场)C 六子冲的更多相关文章
- 2018年全国多校算法寒假训练营练习比赛(第四场)B:道路建设
传送门:https://www.nowcoder.net/acm/contest/76/B 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 65536K,其他语言131072K 64b ...
- 2018年全国多校算法寒假训练营练习比赛(第四场)F:Call to your teacher
传送门:https://www.nowcoder.net/acm/contest/76/F 题目描述 从实验室出来后,你忽然发现你居然把自己的电脑落在了实验室里,但是实验室的老师已经把大门锁上了.更糟 ...
- 牛客网-2018年全国多校算法寒假训练营练习比赛(第四场)-A
解题思路:二分图的最大匹配,但这题是所有点都遍历一遍,所以答案/2: 代码: #include<iostream> #include<algorithm> #include&l ...
- 2018年全国多校算法寒假训练营练习比赛(第一场)闯关的lulu
闯关的lulu 链接:https://www.nowcoder.com/acm/contest/67/J 来源:牛客网 题目描述 勇者lulu某天进入了一个高度10,000,000层的闯关塔,在塔里每 ...
- 2018年全国多校算法寒假训练营练习比赛(第一场)D N阶汉诺塔变形
https://www.nowcoder.com/acm/contest/67/D 思路: 先手动模拟一下过程,以下是模拟过程,按顺序表示第几步需要移动的盘标号 1 1 2 1 1 2 1 1 3 1 ...
- 2018年全国多校算法寒假训练营练习比赛(第一场)E 恋与程序员
https://www.nowcoder.com/acm/contest/67/E 思路: dfs 代码: #include<bits/stdc++.h> using namespace ...
- 2018年全国多校算法寒假训练营练习比赛(第一场)G 圆圈
https://www.nowcoder.com/acm/contest/67/G 思路: 分形. 记录中间左边点的坐标,然后推出另外3个点的坐标,递归到最简单的情况. 代码: #include< ...
- 2018年全国多校算法寒假训练营练习比赛(第二场)B - TaoTao要吃鸡
链接:https://www.nowcoder.com/acm/contest/74/B来源:牛客网 题目描述 Taotao的电脑带不动绝地求生,所以taotao只能去玩pc版的荒野行动了, 和绝地求 ...
- 2018年全国多校算法寒假训练营练习比赛(第二场)F - 德玛西亚万岁
链接:https://www.nowcoder.com/acm/contest/74/F来源:牛客网 题目描述 德玛西亚是一个实力雄厚.奉公守法的国家,有着功勋卓著的光荣军史. 这里非常重视正义.荣耀 ...
随机推荐
- potplayer启动慢的各种奇葩原因
此博文可能会持续更新,因为启动慢的原因各种奇葩啊 1.声卡(螃蟹卡)驱动导致的启动慢.解决方法:potplayer中,"选项"->"声音"->修改一 ...
- 文件操作(CRT、C++、WIN API、MFC)
一.使用CRT函数文件操作 二.使用标准C++库 std::fstream std::string 1)std::string对象内部存储了一个C的字符串,以'\0'结尾的. 2)std::strin ...
- Atcoder Tenka1 Programmer Contest 2019 E - Polynomial Divisors
题意: 给出一个多项式,问有多少个质数\(p\)使得\(p\;|\;f(x)\),不管\(x\)取何值 思路: 首先所有系数的\(gcd\)的质因子都是可以的. 再考虑一个结论,如果在\(\bmod ...
- hihocoder博弈游戏·Nim游戏·三
在这一次游戏中Alice和Bob决定在原来的Nim游戏上增加一条规则:每一次行动时,不仅可以选择一堆取走任意数量的石子(至少取1颗,至多取出这一堆剩下的所有石子),还可以选择将一堆石子分成两堆石子,但 ...
- Python tricks(2) -- method默认参数和闭包closure
Python的method可以设置默认参数, 默认参数如果是可变的类型, 比如list, map等, 将会影响所有的该方法调用. 下面是一个简单的例子 def f(a=None, l=[]): if ...
- linux常用命令:find命令之xargs
在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...
- HTML5 -canvas拖拽、移动 绘制图片可操作移动,拖动
关于canvas 的基础知识就不多说了,可以进这个网址学习 http://www.w3school.com.cn/html5/html_5_canvas.asp 对于canvas 和 SVG 其实一开 ...
- python之路----面向对象进阶一
一.isinstance和issubclass isinstance(obj,cls)检查是否obj是否是类 cls 的对象 class Foo(object): pass obj = Foo() i ...
- MQ内存消耗与积压分析
[root@iZ23nn1p4mjZ logs]# rabbitmqctl status Status of node rabbit@iZ23nn1p4mjZ ... [{pid,15425}, {r ...
- 安装OpenOffice
附件: OpenOffice 1.下载解压 tar -zxvf Apache_OpenOffice_4.1.3_Linux_x86-64_install-rpm_zh-CN.tar.gz 2.安装 / ...