博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
清北考前刷题day6早安
阅读量:4987 次
发布时间:2019-06-12

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

 

#include
#include
#include
#include
#define N 1000010using namespace std;int n,a[N],cnt1,cnt2;int read(){ int x=0,f=1;char c=getchar(); while(c>'9'||c<'0'){
if(c=='-')f=-1;c=getchar();} while(c>='0'&&c<='9'){x=x*10+c-'0';c=getchar();} return 0;}int main(){ scanf("%d",&n); for(int i=1; i<=n; i++)a[i]=read(); for(int i=1; i<=n; i++) { if(a[i]==5)cnt1++; if(a[i]==10) { if(cnt1==0) { puts("NO");return 0; } else cnt2++,cnt1--; } if(a[i]==20) { if(cnt1==0||(cnt2==0&&cnt1<3)) { puts("NO"); return 0; } if(cnt2) cnt2--,cnt1--; else cnt1-=3; } } puts("YES"); return 0;}

 

 

/*贪心反过来括号匹配。*/#include 
#include
#include
#include
#include
''using namespace std;const int maxn = 1000007;int p = 0;int z[maxn],a[maxn],n,m;int main(){ scanf("%d",&n); for (int i = 1; i<=n; i++) scanf("%d",&a[i]); scanf("%d",&m); int x; for (int i = 1; i<=m; i++) { scanf("%d",&x); if (a[x]>0) a[x] = -a[x]; } for (int x = n; x>=1; x--) { if (a[x]>0) { if (z[p] == -a[x]) p--; else { a[x] = -a[x]; p++; z[p]= a[x]; } } else { p++;z[p]=a[x]; } } if (p==0) { for (int i = 1; i<=n; i++) { if (a[i]>0) printf("+%d ",a[i]); else printf("%d ",a[i]); } } else printf("NO\n"); return 0;}

 

 

 

/*FloyedF[i][j][k]表示从i到j能否以k的方式到达。K = 括号完全匹配  或者 缺少一个右括号*/#include 
#include
#include
#include
#include
using namespace std;int n,m;int g[105][105][40],q[105*105*40][3],t,x,y,z;int main(){ freopen("maze.in","r",stdin); freopen("maze.out","w",stdout); scanf("%d%d",&n,&m); memset(g,0,sizeof(g)); t = 0; for (int i = 1; i<=m; i++) { scanf("%d%d%d",&x,&y,&z); if (z!=0) { if (z<0) z = abs(z); else z+=10; g[x][y][z] = 1; g[y][x][z] = 1; } else { g[x][y][z] = 1; g[y][x][z] = 1; t++; q[t][0] = x; q[t][1] = y; q[t][2] = 0; t++; q[t][0] = y; q[t][1] = x; q[t][2] = 0; } } for (int i =1; i<=n; i++) { g[i][i][0] = 1; t++; q[t][0] = i; q[t][1] = i; q[t][2] = 0; } for (int s = 1; s<=t; s++) { int x = q[s][0]; int y = q[s][1]; int status = q[s][2]; if (status!=0) { for (int i = 1; i<=n; i++) if (g[i][x][status-10] == 1) { if (g[i][y][0] ==0) { g[i][y][0] = 1; t++; q[t][0] = i; q[t][1] = y; q[t][2] = 0; } } } else { for (int i =1; i<=n; i++) { if (g[i][x][0] ==1 && g[i][y][0] == 0) { g[i][y][0] =1; t++; q[t][0]= i; q[t][1] = y; q[t][2]= 0; } if (g[y][i][0] == 1 && g[x][i][0] ==0) { g[x][i][0] = 1; t++; q[t][0] = x; q[t][1] = i; q[t][2]= 0; } for (int j = 1; j<=10; j ++) { if (g[y][i][j] == 1 && g[x][i][j+20] == 0) { g[x][i][j+20] = 1; t++; q[t][0] = x; q[t][1] = i; q[t][2] = j+20; } } } } } int tt = 0; scanf("%d",&tt); for (; tt; tt--) { scanf("%d%d",&x,&y); if (g[x][y][0] ==1) printf("YES\n"); else printf("NO\n"); }}

 

转载于:https://www.cnblogs.com/L-Memory/p/7774512.html

你可能感兴趣的文章
POJ – 1200 Crazy Search
查看>>
[转载]opencv +linux
查看>>
oracle ——lob对象 /bfile 字段
查看>>
codeforeces 540E(树状数组
查看>>
记录下
查看>>
framework各版本新特性(为面试准备)
查看>>
P2858 [USACO06FEB]奶牛零食Treats for the Cows
查看>>
HDU 3032 Nim or not Nim?(Multi_SG,打表找规律)
查看>>
4503: 两个串
查看>>
Unity里的人物驱动/换装备/换武器/换衣服/卡通重定位(转)
查看>>
HCNA学习笔记2
查看>>
CentOS6.8搭建Redis缓存服务器
查看>>
EasyNVR智能云终端硬件使用场景分析:如何实现软硬一体的视频上云整体解决方案...
查看>>
Linux Awk使用案例总结(nginx日志统计,文件对比合并等)
查看>>
TFS 自动同步Server 端文件的批处理命令
查看>>
诺基亚推两款WP8新机,为何股价反而大跌15%
查看>>
高中英语听力材料
查看>>
第五篇、HTML标签类型
查看>>
07 个人项目3
查看>>
Docker build报错FATA[0000]
查看>>