fjnu第九届“蓝桥杯” 题解
来源:互联网 发布:ubuntu 查看分区格式 编辑:程序博客网 时间:2024/04/26 06:22
题目传送门
A题:
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;const int co[2][2] = { 1, 0, 0, 1 };int ans = 0;int n = 17, m = 12;void dfs(int x, int y){if (x == n&&m == y){ans++;return;}for (int i = 0; i < 2; i++){int fx = x + co[i][0];int fy = y + co[i][1];if (y == 2 * x||x > n||y > m) continue;dfs(fx, fy);}}int main(){dfs(1, 1);printf("%d\n",ans);//system("pause");return 0;}
B题:
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;int ans = 0;bool vis[20];int num[20];void dfs(int cnt){if (cnt == 10){int num1, num2, num3;num1 = num2 = num3 = 0;for (int i = 0; i < 4; i++) num1 = num1 * 10 + num[i];if (num1>999){for (int i = 4; i < 7; i++) num2 = num2 * 10 + num[i];if (num2>99){for (int i = 7; i < 10; i++) num3 = num3 * 10 + num[i];if (num3>99 && num1 - num2 == num3) ans++, printf("%d - %d = %d\n", num1, num2, num3);}}}for (int i = 0; i < 10; i++){if (vis[i]) continue;vis[i] = 1;num[cnt] = i;dfs(cnt + 1);vis[i] = 0;}}int main(){dfs(0);printf("%d\n",ans);//system("pause");return 0;}
C题:
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>using namespace std;const int mod = 1e9+7,mx = 2e2+10;int c[mx][mx];void init(){for (int i = 1; i < mx; i++){c[i][0] = c[i][i] = 1;for (int j = 1; j < i; j++)c[i][j] = (c[i - 1][j - 1] + c[i - 1][j]) % mod;}}int main(){init();printf("%d\n", c[110][50]);//system("pause");return 0;}
D题:
#include<iostream>#include<algorithm>#include<cstring>using namespace std;typedef long long ll;const int co[2][2]={0,1,1,0};const int mx = 1e5+10;int head[mx],n,m,tot,ans;struct node{ int y; int nxt; node(){} node(int yy,int nx):y(yy),nxt(nx){}}Edge[mx<<2];void AddEdge(int x,int y){ Edge[tot] = node(y,head[x]); head[x] = tot++;}bool vis[mx];void dfs(int x){ if(vis[x]) return ; vis[x] = 1; ans++; for(int i=head[x];~i;i=Edge[i].nxt){ int son = Edge[i].y; if(!vis[son]) dfs(son); }}int main(){ int t,a,b; scanf("%d",&t); while(t--){ memset(head,-1,sizeof(head)); ans = tot = 0; scanf("%d%d",&n,&m); for(int i=1;i<=m;i++){ scanf("%d%d",&a,&b); AddEdge(a,b); AddEdge(b,a); } memset(vis,0,sizeof(vis)); dfs(1); if(ans==n) puts("YES"); else puts("NO"); } return 0;}
E题:
#include<iostream>#include<algorithm>#include<cstring>using namespace std;typedef long long ll;const int mx = 1e3+10;int n,out[mx];struct node{ int x,y; node(){} node(int xx,int yy):x(xx),y(yy){} bool operator < (node A)const { if(x==A.x) return y < A.y; return x < A.x; }}s[mx];int main(){ scanf("%d",&n); for(int i=1;i<=n;i++) scanf("%d%d",&s[i].x,&s[i].y); sort(s+1,s+1+n); int ans = 0; memset(out,0,sizeof(out)); for(int i=1;i<=n;i++){ int maxx = -20000,pos = -1; for(int j=i-1;j>0;j--){ if(s[i].y>=s[j].y) { if(!out[j]&&s[j].y>maxx){ maxx = s[j].y; pos = j;} } } if(pos!=-1) out[pos]++; else ans++; } printf("%d\n",ans); return 0;}
阅读全文
0 0
- fjnu第九届“蓝桥杯” 题解
- 【FJNU】周赛#2题解
- 第九届河南省ACM题解
- 郑州大学第九届程序设计竞赛热身赛题解
- zzuli 第九届ACM校赛题解
- 河南省第九届大学生程序设计竞赛 题解
- FJNU
- LeetCode题解 第九周
- 第九届 北邮程序设计大赛网络赛 部分题解
- 第九届北京化工大学程序设计竞赛(部分题解)
- 第九届湖南省大学生程序设计竞赛部分题解
- 第九届河南省省赛题目部分题解
- 西南科技大学第九届程序设计竞赛B题解题报告(线段树版)
- 第九届北航程序设计大赛网络预赛——水题题解
- “Wishare杯”南邮第九届大学生程序设计竞赛之网络赛 部分题解
- “玲珑杯”第九届郑州轻工业学院校赛模拟赛部分题目题解
- “Wishare杯”南邮第九届大学生程序设计竞赛之现场赛 部分题解
- 第九届山东理工大学ACM网络编程擂台赛 F题题解
- POJ 1328 Radar Installation
- AI与伦理道德
- python算法实战1
- OpenStack虚机网卡的创建过程
- 生活小记63
- fjnu第九届“蓝桥杯” 题解
- Curator的三种缓存。
- 给山寨J-LINK更新固件
- 弘智教育-效果图-4-浴室门和模板窗户
- Watchdog 工作机制解析
- 观点 | 丁磊:爱科学应成新风尚 离开它我们连人类都不是
- 3364 数据结构实验之图论八:欧拉回路
- 独家 | AI大神沈向洋做客网易乌镇论坛,讲了两个笑话和一堆干货
- 漫读 | 这三部科幻电影让你一步步恋上人工智能!