第八届题目

张开发
2026/6/1 17:12:18 15 分钟阅读
第八届题目
等差素数组#include stdio.h #include stdlib.h int isprime(long long x) { if(x1) return 0; if(x2) return 1; if(x%20) return 0; for(int i3;i*ix;i2) { if(x%i0) return 0; } return 1; } int check(long long a,long long d,int len) { for(int i0;ilen;i) { if(!isprime(ai*d)) return 0; } return 1; } int main(int argc, char *argv[]) { int len10; long long base_d210; long long dbase_d; while(1) { for(long long a2;;a) { if(isprime(a)) { if(check(a,d,len)) { printf(%lld,d); return 0; } } if(a1000000) break; } dbase_d; } return 0; }承压计算#include stdio.h #include stdlib.h int main(int argc, char *argv[]) { double a[31][31]{{0},{ 0,7},{ 0,5,8},{ 0,7,8,8},{ 0,9,2,7,2},{ 0,8,1,4,9,1},{ 0,8,1,8,8,4,1},{ 0,7,9,6,1,4,5,4},{ 0,5,6,5,5,6,9,5,6},{ 0,5,5,4,7,9,3,5,5,1},{ 0,7,5,7,9,7,4,7,3,3,1},{ 0,4,6,4,5,5,8,8,3,2,4,3},{ 0,1,1,3,3,1,6,6,5,5,4,4,2},{ 0,9,9,9,2,1,9,1,9,2,9,5,7,9},{ 0,4,3,3,7,7,9,3,6,1,3,8,8,3,7},{ 0,3,6,8,1,5,3,9,5,8,3,8,1,8,3,3},{ 0,8,3,2,3,3,5,5,8,5,4,2,8,6,7,6,9},{ 0,8,1,8,1,8,4,6,2,2,1,7,9,4,2,3,3,4},{ 0,2,8,4,2,2,9,9,2,8,3,4,9,6,3,9,4,6,9},{ 0,7,9,7,4,9,7,6,6,2,8,9,4,1,8,1,7,2,1,6},{ 0,9,2,8,6,4,2,7,9,5,4,1,2,5,1,7,3,9,8,3,3},{ 0,5,2,1,6,7,9,3,2,8,9,5,5,6,6,6,2,1,8,7,9,9},{ 0,6,7,1,8,8,7,5,3,6,5,4,7,3,4,6,7,8,1,3,2,7,4},{ 0,2,2,6,3,5,3,4,9,2,4,5,7,6,6,3,2,7,2,4,8,5,5,4},{ 0,7,4,4,5,8,3,3,8,1,8,6,3,2,1,6,2,6,4,6,3,8,2,9,6},{ 0,1,2,4,1,3,3,5,3,4,9,6,3,8,6,5,9,1,5,3,2,6,8,8,5,3},{ 0,2,2,7,9,3,3,2,8,6,9,8,4,4,9,5,8,2,6,3,4,8,4,9,3,8,8},{ 0,7,7,7,9,7,5,2,7,9,2,5,1,9,2,6,5,3,9,3,5,7,3,5,4,2,8,9},{ 0,7,7,6,6,8,7,5,5,8,2,4,7,7,4,7,2,6,9,2,1,8,2,9,8,5,7,3,6},{ 0,5,9,4,5,5,7,5,5,6,3,5,3,9,5,8,9,5,4,1,2,6,1,4,3,5,3,2,4,1}}; for(int i0;i29;i) { for(int j0;j29;j) { a[i1][j]a[i][j]*1.0/2; a[i1][j1]a[i][j]*1.0/2; } } double max0.0,min999999999; for(int i1;i30;i) { if(a[30][i]max) maxa[30][i]; if(a[30][i]max) mina[30][i]; } long long ans(long long)2086458231/min*max; printf(%lld,ans); return 0; }方格分割DFS#include stdio.h #include stdlib.h int visit[7][7]{0}; int dx[]{1,-1,0,0}; int dy[]{0,0,1,-1}; int cnt0; void dfs(int x,int y) { if(x0||y0||x6||y6) { cnt; return ; } for(int i0;i3;i) { if(!visit[xdx[i]][ydy[i]]) { visit[xdx[i]][ydy[i]]1; visit[6-x-dx[i]][6-y-dy[i]]1; dfs(xdx[i],ydy[i]); visit[xdx[i]][ydy[i]]0; visit[6-x-dx[i]][6-y-dy[i]]0; } } } int main(int argc, char *argv[]) { visit[3][3]1; dfs(3,3); printf(%d,cnt/4); return 0; }日期问题#include stdio.h int a,b,c; int check(int year,int month,int day) { yearyear%100; if(ayearbmonthcday) return 1; if(amonthbdaycyear) return 1; if(adaybmonthcyear) return 1; return 0; } int main() { int month_day[]{0,31,28,31,30,31,30,31,31,30,31,30,31}; int yy,mm,dd; scanf(%d/%d/%d,a,b,c); for(yy1960;yy2059;yy) { if(yy%4000||(yy%40yy%100!0)) month_day[2]29; else month_day[2]28; for(mm1;mm12;mm) { for(dd1;ddmonth_day[mm];dd) { if(check(yy,mm,dd)) printf(%d-%02d-%02d\n,yy,mm,dd); } } } return 0; }包子凑数动态规划#include stdio.h #include stdlib.h int gcd(int a,int b) { while(b) { int tb; ba%b; at; } return a; } int main(int argc, char *argv[]) { int n; scanf(%d,n); int a[n]; for(int i0;in;i) { scanf(%d,a[i]); } int gcd_alla[0]; for(int i1;in;i) { gcd_allgcd(gcd_all,a[i]); } if(gcd_all!1) { printf(INF); return 0; } int dp[10000]; int max10000; for(int i0;imax;i) { dp[i]0; } dp[0]1; for(int i0;in;i) { for(int ja[i];jmax;j) { if(dp[j-a[i]]) dp[j]1; } } int cnt0; for(int i0;imax;i) { if(!dp[i]) cnt; } printf(%d,cnt); return 0; }全球变暖DFS#include stdio.h #include string.h #define MAX 1010 char g[MAX][MAX]; int n,ans,visit[MAX][MAX]; int dx[]{0,0,1,-1}; int dy[]{1,-1,0,0}; int flag1; void dfs(int sx,int sy) { visit[sx][sy]1; int has_water0; for(int i0;i4;i) { int xsxdx[i],ysydy[i]; if(x0||y0||xn||yn) continue; if(g[x][y].) { has_water1; continue; } if(!visit[x][y]g[x][y]#) dfs(x,y); } if(!has_water) flag0; } int main(int argc, char *argv[]) { scanf(%d,n); for(int i0;in;i) { scanf(%s,g[i]); } memset(visit,0,sizeof(visit)); ans0; for(int i0;in;i) { for(int j0;jn;j) { if(g[i][j]#!visit[i][j]) { flag1; dfs(i,j); if(flag) ans; } } } printf(%d,ans); return 0; }

更多文章