博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第三届ACM山东省赛I题_Chess_STL
阅读量:5343 次
发布时间:2019-06-15

本文共 3889 字,大约阅读时间需要 12 分钟。

7600B的代码量,不说啥了,现场能不能做出来还要看运气.

2Y,第一次忘记输出t16,WA了。。。

代码如下:

#include 
#include
#include
#include
#include
using namespace std;struct point{ int x,y; bool operator<(const point&c) const { if (x!=c.x) return x
ID;map
>row,col,k1,k2;int _count[100005],cnt_ID,horse[100005],cnt_horse,ans[20];int dx[8]= {-2,-2,-1,-1,1,1,2,2},dy[8]= {1,-1,2,-2,2,-2,1,-1};int main(){ int i,j,T,n; scanf("%d",&T); for (int kcase=1; kcase<=T; ++kcase) { scanf("%d",&n); memset(_count,0,sizeof(_count[0])*n); ID.clear(); row.clear(); col.clear(); k1.clear(); k2.clear(); cnt_horse=cnt_ID=0; char c,ch; point p; mark m; int x,y; for (i=0; i
(); if (!col.count(y)) col[y]=vector
(); if (!k1.count(x+y)) k1[x+y]=vector(); if (!k2.count(x-y)) k2[x-y]=vector(); m.id=i,m.p=y; row[x].push_back(m); m.p=x; col[y].push_back(m); k1[x+y].push_back(m); k2[x-y].push_back(m); } for (map
>::iterator it=row.begin(); it!=row.end(); it++) sort(row[it->first].begin(),row[it->first].end()); for (map
>::iterator it=col.begin(); it!=col.end(); it++) sort(col[it->first].begin(),col[it->first].end()); for (map
>::iterator it=k1.begin(); it!=k1.end(); it++) sort(k1[it->first].begin(),k1[it->first].end()); for (map
>::iterator it=k2.begin(); it!=k2.end(); it++) sort(k2[it->first].begin(),k2[it->first].end());// printf("row :\n");// for (map
>::iterator it=row.begin(); it!=row.end(); it++)// {// printf("%d : ",it->first);// for (i=0; i
first].size(); ++i)// printf(" %d",row[it->first][i].id);// printf("\n");// }// for (map
>::iterator it=col.begin(); it!=col.end(); it++)// sort(col[it->first].begin(),col[it->first].end());// for (map
>::iterator it=k1.begin(); it!=k1.end(); it++)// sort(k1[it->first].begin(),k1[it->first].end());// for (map
>::iterator it=k2.begin(); it!=k2.end(); it++)// sort(k2[it->first].begin(),k2[it->first].end()); for (map
>::iterator it=row.begin(); it!=row.end(); it++) { int size=row[it->first].size(); for (i=0; i
first][i].id].role=='K') { if (i && row[it->first][i-1].p==row[it->first][i].p-1) ++_count[row[it->first][i-1].id]; if (i
first][i+1].p==row[it->first][i].p+1) ++_count[row[it->first][i+1].id]; } else if (information[row[it->first][i].id].role=='R' || information[row[it->first][i].id].role=='Q') { if (i) ++_count[row[it->first][i-1].id]; if (i
first][i+1].id]; } } } for (map
>::iterator it=col.begin(); it!=col.end(); it++) { int size=col[it->first].size(); for (i=0; i
first][i].id].role=='K') { if (i && col[it->first][i-1].p==col[it->first][i].p-1) ++_count[col[it->first][i-1].id]; if (i
first][i+1].p==col[it->first][i].p+1) ++_count[col[it->first][i+1].id]; } else if (information[col[it->first][i].id].role=='R' || information[col[it->first][i].id].role=='Q') { if (i) ++_count[col[it->first][i-1].id]; if (i
first][i+1].id]; } } } for (map
>::iterator it=k1.begin(); it!=k1.end(); it++) { int size=k1[it->first].size(); for (i=0; i
first][i].id].role=='K') { if (i && k1[it->first][i-1].p==k1[it->first][i].p-1) ++_count[k1[it->first][i-1].id]; if (i
first][i+1].p==k1[it->first][i].p+1) ++_count[k1[it->first][i+1].id]; } else if (information[k1[it->first][i].id].role=='B' || information[k1[it->first][i].id].role=='Q') { if (i) ++_count[k1[it->first][i-1].id]; if (i
first][i+1].id]; } } } for (map
>::iterator it=k2.begin(); it!=k2.end(); it++) { int size=k2[it->first].size(); for (i=0; i
first][i].id].role=='K') { if (i && k2[it->first][i-1].p==k2[it->first][i].p-1) ++_count[k2[it->first][i-1].id]; if (i
first][i+1].p==k2[it->first][i].p+1) ++_count[k2[it->first][i+1].id]; } else if (information[k2[it->first][i].id].role=='B' || information[k2[it->first][i].id].role=='Q') { if (i) ++_count[k2[it->first][i-1].id]; if (i
first][i+1].id]; } } } for (i=0; i

  

转载于:https://www.cnblogs.com/Chierush/archive/2013/06/05/3118173.html

你可能感兴趣的文章
zoj 1232 Adventure of Super Mario
查看>>
1201 网页基础--JavaScript(DOM)
查看>>
组合数学 UVa 11538 Chess Queen
查看>>
oracle job
查看>>
Redis常用命令
查看>>
XML学习笔记(二)-- DTD格式规范
查看>>
[转载]电脑小绝技
查看>>
windos系统定时执行批处理文件(bat文件)
查看>>
thinkphp如何实现伪静态
查看>>
BZOJ 2243: [SDOI2011]染色( 树链剖分 )
查看>>
BZOJ 1925: [Sdoi2010]地精部落( dp )
查看>>
c++中的string常用函数用法总结!
查看>>
[DLX精确覆盖+打表] hdu 2518 Dominoes
查看>>
SuperMap iServerJava 6R扩展领域开发及压力测试---判断点在那个面内(1)
查看>>
Week03-面向对象入门
查看>>
一个控制台程序,模拟机器人对话
查看>>
web.xml 中加载顺序
查看>>
pycharm激活地址
查看>>
hdu 1207 四柱汉诺塔
查看>>
Vue 2.x + Webpack 3.x + Nodejs 多页面项目框架(上篇——纯前端多页面)
查看>>