博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
4395: [Usaco2015 dec]Switching on the Lights
阅读量:5312 次
发布时间:2019-06-14

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

  每次到达一个点,或者点亮一个房间的灯的时候,检查一下它四周的点能否走。

  一开始看错题了..要求的是最多能开多少房的灯。

1 #include
2 #include
3 #include
4 #include
5 #include
6 using namespace std; 7 const int maxn=10023; 8 const int xx[4]={
0,0,1,-1},yy[4]={
1,-1,0,0}; 9 struct zs{
int too,pre;}e[20012];int tot,last[maxn];10 int dlx[maxn],dly[maxn];11 int id[103][103],X[maxn],Y[maxn];12 bool con[103][103],can[103][103];13 int i,j,k,n,m,l,r;14 int ans;15 16 int ra;char rx;17 inline int read(){18 rx=getchar(),ra=0;19 while(rx<'0'||rx>'9')rx=getchar();20 while(rx>='0'&&rx<='9')ra*=10,ra+=rx-48,rx=getchar();return ra;21 }22 inline void insert(int a,int b){e[++tot].too=b,e[tot].pre=last[a],last[a]=tot;}23 inline void run(int nx,int ny){24 int x,y;25 for(int i=0;i<4;i++){26 x=nx+xx[i],y=ny+yy[i];27 if(x<1||y<1||x>n||y>n)continue;28 if(!con[x][y]&&can[x][y])r++,dlx[r]=x,dly[r]=y;29 con[x][y]=1;30 }31 }32 int main(){33 n=read(),m=read();int a,b,c,d,cnt=0;34 for(i=1;i<=n;i++)for(j=1;j<=n;j++)id[i][j]=++cnt,X[cnt]=i,Y[cnt]=j;35 for(i=1;i<=m;i++)a=read(),b=read(),c=read(),d=read(),insert(id[a][b],id[c][d]);36 l=0,r=1;37 dlx[1]=dly[1]=con[1][1]=can[1][1]=1;38 while(l
View Code

 

转载于:https://www.cnblogs.com/czllgzmzl/p/5644979.html

你可能感兴趣的文章
快来熟练使用 Mac 编程
查看>>
Node.js 入门:Express + Mongoose 基础使用
查看>>
一步步教你轻松学奇异值分解SVD降维算法
查看>>
使用pager进行分页
查看>>
UVA - 1592 Database
查看>>
Fine Uploader文件上传组件
查看>>
javascript中的传递参数
查看>>
objective-c overview(二)
查看>>
python查询mangodb
查看>>
consonant combination
查看>>
驱动的本质
查看>>
Swift的高级分享 - Swift中的逻辑控制器
查看>>
Swagger简单介绍
查看>>
Python数据分析入门案例
查看>>
vue-devtools 获取到 vuex store 和 Vue 实例的?
查看>>
Linux 中【./】和【/】和【.】之间有什么区别?
查看>>
内存地址对齐
查看>>
看门狗 (监控芯片)
查看>>
css背景样式
查看>>
JavaScript介绍
查看>>