| #include <stdio.h> |
| |
| |
| |
| int main(void) { |
| int a,b,c;scanf("%d%d%d",&a,&b,&c); |
| if(a+b>c&&a+c>b&&b+c>a) printf("yes\n"); |
| else printf("no\n"); |
| return 0; |
| } |
| #include <stdio.h> |
| |
| |
| |
| int main(void) { |
| int m,e,d,n;scanf("%d",&n); |
| while(n--) |
| { |
| scanf("%d%d%d",&m,&e,&d); |
| printf("%d\n",m-d*e>0?m-d*e:0); |
| } |
| return 0; |
| } |
| #include <stdio.h> |
| |
| |
| |
| int main(void) { |
| int n;scanf("%d\n",&n); |
| for(int i=1;i<=n;++i) |
| { |
| char c;scanf("%c\n",&c); |
| if(c=='z'||c=='Z') |
| printf(" \n"); |
| else printf("%c\n",c+1); |
| } |
| return 0; |
| } |
| #include <stdio.h> |
| |
| |
| |
| int main(void) { |
| int n,m,cnt=0;scanf("%d%d",&n,&m); |
| int now=m; |
| for(int i=1;i<=n;++i){ |
| if(now<=0) ++cnt,now=m; |
| int x;scanf("%d",&x); |
| now-=x; |
| } |
| printf("%d\n",cnt+1); |
| return 0; |
| } |
| #include <stdio.h> |
| |
| int a[200]; |
| |
| int main(void) { |
| int n;scanf("%d",&n); |
| for(int i=1;i<=n;++i) |
| { |
| int x;scanf("%d",&x); |
| ++a[x]; |
| } |
| for(int i=1;i<=100;++i) |
| if(a[i]%2) |
| printf("%d\n",i); |
| return 0; |
| } |
使用桶排序的思想用下标解决问题。
| #include <stdio.h> |
| |
| int n,a[200]; |
| |
| int main(void) { |
| while(1) |
| { |
| scanf("%d",&n);if(n==0) break; |
| for(int i=1;i<=n;++i) scanf("%d",&a[i]); |
| for(int i=1;i<n;++i) |
| for(int j=i+1;j<=n;++j) |
| if(a[i]>a[j]) |
| {int tmp=a[i];a[i]=a[j];a[j]=tmp;} |
| printf("%d\n",a[n/2+1]); |
| } |
| return 0; |
| } |
| |
| |
| int a[20],b[20]; |
| |
| int main(void) { |
| for(int i=1;i<=10;++i) scanf("%d",&a[i]); |
| for(int i=1;i<=10;++i) scanf("%d",&b[i]); |
| for(int i=1;i<10;++i) printf("%d ",(a[i]+5)%10); |
| printf("%d\n",(a[10]+5)%10); |
| for(int i=1;i<10;++i) printf("%d ",(b[i]+5)%10); |
| printf("%d\n",(b[10]+5)%10); |
| return 0; |
| } |
| #include <stdio.h> |
| |
| int a[20]; |
| |
| int main(void) { |
| int n,x;scanf("%d%d",&n,&x); |
| for(int i=1;i<=n;++i) |
| { |
| int i1=i; |
| while(i1) |
| { |
| ++a[i1%10];i1/=10; |
| } |
| } |
| printf("%d\n",a[x]); |
| return 0; |
| } |
同样的用下标解决问题的思想
| #include <stdio.h> |
| |
| |
| |
| int main(void) { |
| int t;scanf("%d",&t); |
| while(t--){ |
| int n,m,ans=0;scanf("%d%d",&n,&m); |
| for(int i=1;i<=n;++i) |
| { |
| int cnt=0; |
| for(int j=1;j<=m;++j) |
| { |
| int x;scanf("%d",&x);cnt+=x; |
| } |
| if(cnt>=(m+1)/2) ++ans; |
| } |
| printf("%d\n",ans); |
| } |
| return 0; |
| } |
| #include <stdio.h> |
| |
| int a[200],b[200],c[200]; |
| |
| int main(void) { |
| while(1) |
| { |
| int n,m,now=0;scanf("%d%d",&n,&m);int n1=n; |
| if(n==0&&m==0) break; |
| for(int i=1;i<=n;++i) scanf("%d",&a[i]),b[i]=i+1,c[i]=i-1; |
| b[0]=b[n]=1;c[1]=n; |
| while(n>1) |
| { |
| for(int i=1;i<=m;++i) now=b[now]; |
| --a[now]; |
| if(a[now]==0) |
| { |
| b[c[now]]=b[now]; |
| c[b[now]]=c[now]; |
| --n; |
| } |
| } |
| for(int i=1;i<=n1;++i) |
| { |
| if(a[i]) |
| printf("%d\n",i); |
| } |
| } |
| return 0; |
| } |
约瑟夫变异了,不能递推,只能模拟了
| #include <stdio.h> |
| |
| int f(int x,int y) |
| { |
| double n1=1.0*x*2/y; |
| int n2=n1; |
| if(n2-1.0*n1==0) |
| return n2; |
| else return n2+1; |
| } |
| |
| int main(void) { |
| int n,m;scanf("%d%d",&n,&m); |
| if(n==1) printf("2\n"); |
| else printf("%d\n",f(n,m)); |
| return 0; |
| } |
脑筋急转弯题
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】