- 浏览: 377485 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
wsyzyrxp:
非常感谢 兄弟 帮了我大忙
[opengl]弹簧质点法模拟柔性布料以及椭球碰撞的opengl实现 -
mingdry0304:
[opengl]彩色立方体旋转 -
tyfengyu:
我刚刚更改的代码加上了标准差stdVal,故recoMat应该 ...
[python]用python实现的pca算法 -
tyfengyu:
python的pca代码有2处错误:1.finalData = ...
[python]用python实现的pca算法 -
暴风雪:
McFlurry 写道前排(凑字数)!擦你怎么摸来这里的
诈尸总结
大致题意:
福州现场赛的水模拟,给你一个棋局判定黑棋是不是死棋。
大致思路:
真是坑爹的题目啊,无力吐槽中。
贴上一组神数据
5 1 4
R 2 4
H 3 2
C 3 3
C 3 4
G 10 5
#include<iostream> #include<cstring> #include<cstdio> using namespace std; const int nMax=11; int dang[nMax][nMax],n; bool vis[nMax][nMax]; class fuck{ public: char c[10]; int x,y; }node[nMax]; void genkill(int a){ //老将 int x=node[a].x,i,j; int y=node[a].y; for(i=y-1;i>=1;i--){ dang[i][x]=1; if(vis[i][x]!=0)break; //直到他面前的那个棋子路线上的点都危险 } } void cankill(int a){ //炮 int x=node[a].x,i,j; int y=node[a].y; for(i=x+1;x<=9;i++){ if(vis[y][i]){ for(j=i+1;j<=9;j++){ dang[y][j]=1; if(vis[y][j])break; } break; } } //cout<<"dawd\n"; for(i=x-1;i>=1;i--){ if(vis[y][i]){ for(j=i-1;j>=1;j--){ dang[y][j]=1; if(vis[y][j])break; } break; } } for(i=y+1;i<=10;i++){ if(vis[i][x]){ for(j=i+1;j<=10;j++){ dang[j][x]=1; if(vis[j][x])break; } break; } } for(i=y-1;i>=1;i--){ if(vis[i][x]){ for(j=i-1;j>=1;j--){ dang[j][x]=1; if(vis[j][x])break; } break; } } } void horkill(int a){ // 马 int x=node[a].x,i,j,xx,yy; int y=node[a].y; if(!vis[y-1][x]){ yy=y-2; xx=x-1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } xx=x+1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } } if(!vis[y+1][x]){ yy=y+2; xx=x-1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } xx=x+1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } } if(!vis[y][x+1]){ xx=x+2; yy=y-1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } yy=y+1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } } if(!vis[y][x-1]){ xx=x-2; yy=y-1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } yy=y+1; if(xx>=1&&xx<=9&&yy>=1&&yy<=10){ dang[yy][xx]=1; } } } void ridkill(int a){ //狙 int x=node[a].x,i,j; int y=node[a].y; for(i=x+1;i<=9;i++){ dang[y][i]=1; if(vis[y][i])break; } for(i=x-1;i>=1;i--){ dang[y][i]=1; if(vis[y][i])break; } for(i=y-1;i>=1;i--){ dang[i][x]=1; if(vis[i][x]!=0)break; } for(i=y+1;i<=10;i++){ dang[i][x]=1; if(vis[i][x]!=0)break; } } int main(){ int i,j,x,y,flag,xx,yy; while(cin>>n){ flag=0; cin>>node[0].y>>node[0].x; if(n==0&&node[0].y==0&&node[0].x==0)break; memset(dang,0,sizeof(dang)); memset(vis,0,sizeof(vis)); for(i=1;i<=n;i++){ cin>>node[i].c>>node[i].y>>node[i].x; vis[node[i].y][node[i].x]=1; } for(i=1;i<=n;i++){ if(node[i].c[0]=='G'){genkill(i);} if(node[i].c[0]=='C'){cankill(i);} if(node[i].c[0]=='H'){horkill(i);} if(node[i].c[0]=='R'){ridkill(i);} } // for(i=1;i<=10;i++){ // for(j=1;j<=9;j++){ // cout<<dang[i][j]; // }cout<<endl; // } x=node[0].x,y=node[0].y; xx=x+1;yy=y; if(xx>=4&&xx<=6&&yy>=1&&yy<=3&&!dang[yy][xx]){//cout<<1; flag=1;} xx=x-1;yy=y; if(xx>=4&&xx<=6&&yy>=1&&yy<=3&&!dang[yy][xx]){//cout<<2; flag=1;} xx=x;yy=y+1; if(xx>=4&&xx<=6&&yy>=1&&yy<=3&&!dang[yy][xx]){//cout<<3; flag=1;} xx=x;yy=y-1; if(xx>=4&&xx<=6&&yy>=1&&yy<=3&&!dang[yy][xx]){//cout<<4; flag=1;} if(flag)cout<<"NO\n";//printf("NO\n"); else cout<<"YES\n";//printf("YES\n"); } return 0; }
评论
2 楼
暴风雪
2012-03-08
反Orz
1 楼
笔良文昌
2012-03-08
组团 Orz Orz Orz Orz Orz Orz Orz Orz Orz Orz Orz Orz Orz
发表评论
-
Codeforces #285 (Div. 2) C - Misha and Forest
2015-01-12 20:26 689题意 给出一个无相无环图(树或者是森林),给出 ... -
[小模拟]zoj 3838
2014-11-30 18:52 889题意 问需要修改多少个点使得这个正方形完全对称 ... -
[模拟]hdoj 5071
2014-10-23 10:38 771大致题意: 自己读 大致思路: ... -
[水题]hdoj 5038
2014-09-25 17:21 564题意很简单,就是找众数,如果大家的值并不完全相同但是出现的次 ... -
[dfs][模拟]hdoj 5031
2014-09-25 12:31 1036大致题意: 右侧每个格子内的数字代表的是左边对应点上经 ... -
[贪心][位运算]hdoj 5014
2014-09-23 11:31 811大致题意 给出一列n个数a[n],每个数属于0--n,切每 ... -
[水题]hdoj 5003
2014-09-21 10:41 547没什么好说的,直接去套题目里面的式子就行 #includ ... -
[字符串+暴力]zoj 3818
2014-09-21 10:04 757题意: 给出一个字符串,问这个字符串去掉标点符号之 ... -
[水题]hdoj 4432:Sum of divisors
2012-10-27 18:02 1735大致题意: 把一个数的所有约数化为m进制之后,把这些数的 ... -
[模拟]zoj 3657:The Little Girl who Picks Mushrooms
2012-10-18 14:14 1321大致题意: 有五个山头可以采蘑菇,现在先给出n(n< ... -
[组合数学]zoj 3647:Gao the Grid
2012-10-11 21:34 1176http://acm.zju.edu.cn/onlinejud ... -
[模拟]zoj 3654:Letty's Math Class
2012-10-11 21:20 1160http://acm.zju.edu.cn/onlinejud ... -
[规律题]zoj 3629:Treasure Hunt IV
2012-08-31 08:11 1355大致题意: 现在规定数字n,如果[n/1] + [n ... -
[最长不降子序列]zoj 3523:Bookcase
2012-06-12 17:29 1061大致题意: 一个书架共有n层,每层m本书,现在要使得每一 ... -
[模拟]zoj 3326:An Awful Problem
2012-06-08 17:45 996大致题意: 给出两个日期,求出两个日期中,月份为质数 ... -
[模拟+二分]zoj 3470:Magic Squares
2012-06-08 14:37 1006大致题意: 如题目中给出的图片 对于这样的一个无线 ... -
[usaco] Chapter2-Bigger Challenges(Section 2.4)
2012-05-26 08:53 840/* ID: bbezxcy1 PROG: ttwo ... -
[usaco] Chapter1-Getting started(Section 1.5)
2012-05-05 12:12 805/* ID: bbezxcy1 PROG: numt ... -
[usaco] Chapter1-Getting started(Section 1.4)
2012-05-04 17:09 875/* ID: bbezxcy1 PROG: clocks ... -
[usaco] Chapter1-Getting started(Section 1.3)
2012-04-29 12:49 851/* ID:bbezxcy1 PRO ...
相关推荐
Problem Description Calculate A + B. Input Each line will contain two integers A and B....HDOJ 代码: #include int main() { int a,b; while(scanf("%d %d",&a,&b)!=EOF) printf("%d\n",a+b); }
HDOJ题目分类HDOJ题目分类HDOJ题目分类
ACM ICPC HDOJ1002
hdoj1001标程
ACM ICPC HDOJ1001
hdoj-problem-archive 杭电OJ题目源码记录 —— a source code of hdoj acm problem archive 简介 此项目为 的 题目以及代码仓库 src 中每一个文件夹代表一个题目 每个文件夹中都有 原题文档介绍.md 原题文档介绍.md...
hdoj上的资源,代码有注释,很不错的哦
hdoj1004,解题代码,答案代码,欢迎下载
ACM ICPC HDOJ1003
ACM ICPC HDOJ1008
杭州电子科技大学hdoj1002,大整数相加问题
杭州电子科大HDOJ
c语言 最短路 是hdoj上的一个最短路问题,写的很牛
ACM ICPC HDOJ1000
hdoj解题代码,题目为1000-1050
一些HDOJ上的DP题目的小总结,但愿能帮到那些想专攻DP的人吧
codj,hdoj的源码(50-60题)
hdoj 2013 多校训练3标程+解题报告
HDOJ 源代码 包含几百道HDOJ题目源码
hdoj1005 Number Sequence, 杭州电子科技大学oj题目代码