小雨系列简单题参考代码
小雨想要设置密码
生活中经常会遇到需要设置密码的情况,小雨可烦了。他想到一个办法,首先找到n个幸运数字,然后在这几个幸运数字的基础上,构造一个回文数作为密码。
比如:幸运数字是123,那么构造成的密码就是12321,最后一个幸运数字不重复。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include<iostream> using namespace std; int main() { int n,i; cin>>n; int a[n]; for(i=0;i<n;i++) { cin>>a[i]; cout<<a[i]; } for(i=n-2;i>=0;i--) { cout<<a[i]; } return 0; } |
小雨能找到一张好座椅吗
不知道怎么的,小雨来到了一个奇怪的公园,看到一些奇怪的座椅。这些座椅编号从1到n,以环形排列,也就是说,按顺时针顺序,1号座椅的下一个是2号,2号座椅的下一个是3号,n号座椅的下一个是1号。
除了按顺时针顺序编号之外,每个座椅还有一个数字,表示这个座椅上已经坐了几个人,只有一个人没有的座椅,小雨才觉得是好座椅,才愿意坐下去。
现在已经知道小雨从第几号座椅出发,按照顺时针顺序挨个经过座椅,请你编程计算小雨在找到合适座椅的过程中要经过几个座椅。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
#include<iostream> using namespace std; int main() { int n,m,i,x=1; cin>>n>>m; int a[n+1]; for(i=1;i<=n;i++) { cin>>a[i]; } for(i=m;;i++,x++) { if(a[i]==0) {cout<<x;break;} if(i==n) {i=0;} if(x==n) {cout<<0;break;} } return 0; } |
小雨要买雪糕吃
小雨是个小吃货,吃过冰棍又想吃雪糕了!小雨在店里看到三种雪糕,每种雪糕的价格不一样,吃每种雪糕能获得的快乐值也不同。雪糕A的价格是10元,吃了能获得快乐值a,雪糕B的价格是8元,吃了能获得快乐值b,雪糕C的价格是5元,吃了能获得快乐值c,现在小雨身上有m元钱,请你编程计算,小雨要怎么买这些雪糕,能获得最大的总快乐值。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
#include<iostream> using namespace std; int main() { int a,b,c,m,x,y,z,s=0; cin>>a>>b>>c>>m; for(x=0;x<=m/a;x++) { for(y=0;y<=m/b;y++) { for(z=0;z<=m/c;z++) { if(a*x+y*b+z*c>s&&10*x+8*y+5*z<=m) s=a*x+y*b+z*c; } } } cout<<s; return 0; } |
小雨排队队
小雨和同学们站在一起,从左到右已经形成一个队列,现在老师要他们按照身高的顺序从左到右重新排队,即排完后的顺序是每一个靠左的同学的身高都不超过靠右的同学的身高。小雨有点小懒,他想知道,自己最少只要移动几步,就可以达到重新排队的要求呢。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#include<iostream> using namespace std; int main() { int a,q=0,w=0,i; cin>>a; int x[100]; for(i=1;;i++) { cin>>x[i]; if(x[i]==0)break; } for(i=1;;i++) { if(x[i]==0)break; if(x[i]<x[a])q++; if(x[i]<=x[a])w++; } if(a>=q&&a<=w)cout<<0; else if(a>w)cout<<a-w; else cout<<q-a+1; return 0; } |
小雨不怕台风天
听说很猛的台风要来了,小雨很害怕;可结果台风没怎么着就过去了,小雨笑了。听说台风在其他地方造成了不小的危害,可小雨这的台风怎么跟闹着玩似的呢,小雨心想这大概就是有福之州的厉害了吧!
现在有一个n*n的矩阵构成的地图,每个数字表示台风对每个城市构成的危害值。小雨想知道,除了福州之外,还有哪些城市是幸运的城市。
所谓幸运的城市的定义是,如果这个城市的上、下、左、右、左上、左下、右上、右下相邻的几个城市的受危害值都大等于它,那么这个城市就是幸运的城市。
小雨想知道,这张图中,有哪些可以算是幸运的城市。请编程依次输出幸运城市的行、列坐标。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
#include<iostream> using namespace std; int main() { int n,i,j,s=0,g=0,q; cin>>n; int a[n+1][n+1],x[100],y[100]; for(i=0;i<=n+1;i++) for(j=0;j<=n+1;j++) a[i][j]=999; for(i=1;i<=n;i++) for(j=1;j<=n;j++) cin>>a[i][j]; for(i=1;i<=n;i++) { for(j=1;j<=n;j++) { if(a[i][j]<=a[i+1][j]&&a[i][j]<=a[i][j+1]&&a[i][j]<=a[i-1][j]&&a[i][j]<=a[i][j-1]&&a[i][j]<=a[i-1][j-1]&&a[i][j]<=a[i+1][j-1]&&a[i][j]<=a[i+1][j+1]&&a[i][j]<=a[i-1][j+1]) { x[g]=i; y[g]=j; g++; } } } cout<<g<<endl; for(q=0;q<g;q++) { if(q!=0){cout<<' ';} cout<<x[q]<<' '<<y[q]; } return 0; } |
膜拜hzwer早期作品