学校4-11天梯赛选拔赛

目录

L1-5 6翻了

题目

输入格式:

输出格式:

输入样例:

输出样例:

思路

AC代码

L1-1 嫑废话上代码

题目

输入格式:

输出格式:

输入样例:

输出样例:

AC代码

L1-8 刮刮彩票

题目

输入格式:

输出格式:

输入样例:

输出样例:

思路

AC代码

L2-1 特立独行的幸福

题目

输入格式:

输出格式:

输入样例 1:

输出样例 1:

输入样例 2:

输出样例 2:

思路

AC代码

L2-2 老板的作息表

题目

输入格式:

输出格式:

输入样例:

输出样例:

思路

AC代码

L1-6 打PTA

题目

输入格式:

输出格式:

输入样例:

输出样例:

AC代码

L2-3 浪漫侧影

思路

输入格式:

输出格式:

输入样例:

输出样例:

思路

AC代码

L1-2 两小时学完C语言

题目

输入格式:

输出格式:

输入样例:

输出样例:

AC代码

L1-4 降价提醒机器人

题目

输入格式:

输出格式:

输入样例:

输出样例:

AC代码

L1-7 天梯赛的善良

题目

输入格式:

输出格式:

输入样例:

输出样例:

AC代码

L1-3 程序员买包子

题目

输入格式:

输出格式:

输入样例 1:

输出样例 1:

输入样例 2:

输出样例 2:

输入样例 3:

输出样例 3:

AC代码

PS


L1-5 6翻了

题目

分数 15

作者 陈越

单位 浙江大学

666.JPG

“666”是一种网络用语,大概是表示某人很厉害、我们很佩服的意思。最近又衍生出另一个数字“9”,意思是“6翻了”,实在太厉害的意思。如果你以为这就是厉害的最高境界,那就错啦 —— 目前的最高境界是数字“27”,因为这是 3 个 “9”!

本题就请你编写程序,将那些过时的、只会用一连串“6666……6”表达仰慕的句子,翻译成最新的高级表达。

输入格式:

输入在一行中给出一句话,即一个非空字符串,由不超过 1000 个英文字母、数字和空格组成,以回车结束。

输出格式:

从左到右扫描输入的句子:如果句子中有超过 3 个连续的 6,则将这串连续的 6 替换成 9;但如果有超过 9 个连续的 6,则将这串连续的 6 替换成 27。其他内容不受影响,原样输出。

输入样例:

it is so 666 really 6666 what else can I say 6666666666

输出样例:

it is so 666 really 9 what else can I say 27

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

思路

遍历一次,每次遇到六就判断有几个连续的6.

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{string s;getline(cin,s);int i=0;string ans;int len=s.length();while(i<len){if(s[i]!='6'){ans+=s[i];i++;continue;}int cnt=0;while(i<len&&s[i]=='6'){cnt++;i++;}if(cnt>3&&cnt<=9){ans+="9";}else if(cnt>9){ans+="27";}else if(cnt==1) ans+="6";else if(cnt==2) ans+="66";else if(cnt==3) ans+="666";}cout<<ans;
}

L1-1 嫑废话上代码

题目

分数 5

切换布局

作者 陈越

单位 浙江大学

Linux 之父 Linus Torvalds 的名言是:“Talk is cheap. Show me the code.”(嫑废话,上代码)。本题就请你直接在屏幕上输出这句话。

输入格式:

本题没有输入。

输出格式:

在一行中输出 Talk is cheap. Show me the code.

输入样例:

输出样例:

Talk is cheap. Show me the code.

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

AC代码

#include<iostream>
using namespace std;
int main()
{cout<<"Talk is cheap. Show me the code.";
}

L1-8 刮刮彩票

题目

分数 20

作者 DAI, Longao

单位 杭州百腾教育科技有限公司

“刮刮彩票”是一款网络游戏里面的一个小游戏。如图所示:

-362960_55cb6a89bf693.png

每次游戏玩家会拿到一张彩票,上面会有 9 个数字,分别为数字 1 到数字 9,数字各不重复,并以 3×3 的“九宫格”形式排布在彩票上。

在游戏开始时能看见一个位置上的数字,其他位置上的数字均不可见。你可以选择三个位置的数字刮开,这样玩家就能看见四个位置上的数字了。最后玩家再从 3 横、3 竖、2 斜共 8 个方向中挑选一个方向,方向上三个数字的和可根据下列表格进行兑奖,获得对应数额的金币。

数字合计获得金币数字合计获得金币
610,0001672
73617180
872018119
93601936
108020306
11252211,080
1210822144
1372231,800
1454243,600
15180

现在请你写出一个模拟程序,模拟玩家的游戏过程。

输入格式:

输入第一部分给出一张合法的彩票,即用 3 行 3 列给出 0 至 9 的数字。0 表示的是这个位置上的数字初始时就能看见了,而不是彩票上的数字为 0。

第二部给出玩家刮开的三个位置,分为三行,每行按格式 x y 给出玩家刮开的位置的行号和列号(题目中定义左上角的位置为第 1 行、第 1 列。)。数据保证玩家不会重复刮开已刮开的数字。

最后一部分给出玩家选择的方向,即一个整数: 1 至 3 表示选择横向的第一行、第二行、第三行,4 至 6 表示纵向的第一列、第二列、第三列,7、8分别表示左上到右下的主对角线和右上到左下的副对角线。

输出格式:

对于每一个刮开的操作,在一行中输出玩家能看到的数字。最后对于选择的方向,在一行中输出玩家获得的金币数量。

输入样例:

1 2 3
4 5 6
7 8 0
1 1
2 2
2 3
7

输出样例:

1
5
6
180

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

思路

简单模拟

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{int a[]={0,0,0,0,0,0,10000,36,720,360,80,252,108,72,54,180,72,180,119,36,306,1080,144,1800,3600};int b[4][4];int x,y;int sum=45;for(int i=1;i<=3;i++){for(int j=1;j<=3;j++){cin>>b[i][j];sum-=b[i][j];if(b[i][j]==0) {x=i,y=j;}}}b[x][y]=sum;for(int i=0;i<3;i++){int xi,yi;cin>>xi>>yi;cout<<b[xi][yi]<<endl;;}int f;cin>>f;int total=0;if(f<=3){for(int i=1;i<=3;i++)total+=b[f][i];}else if(f<=6){for(int i=1;i<=3;i++)total+=b[i][f-3];}else if(f==7)total+=b[1][1]+b[2][2]+b[3][3];elsetotal+=b[3][1]+b[2][2]+b[1][3];cout<<a[total];
}

L2-1 特立独行的幸福

题目

分数 25

作者 陈越

单位 浙江大学

对一个十进制数的各位数字做一次平方和,称作一次迭代。如果一个十进制数能通过若干次迭代得到 1,就称该数为幸福数。1 是一个幸福数。此外,例如 19 经过 1 次迭代得到 82,2 次迭代后得到 68,3 次迭代后得到 100,最后得到 1。则 19 就是幸福数。显然,在一个幸福数迭代到 1 的过程中经过的数字都是幸福数,它们的幸福是依附于初始数字的。例如 82、68、100 的幸福是依附于 19 的。而一个特立独行的幸福数,是在一个有限的区间内不依附于任何其它数字的;其独立性就是依附于它的的幸福数的个数。如果这个数还是个素数,则其独立性加倍。例如 19 在区间[1, 100] 内就是一个特立独行的幸福数,其独立性为 2×4=8。

另一方面,如果一个大于1的数字经过数次迭代后进入了死循环,那这个数就不幸福。例如 29 迭代得到 85、89、145、42、20、4、16、37、58、89、…… 可见 89 到 58 形成了死循环,所以 29 就不幸福。

本题就要求你编写程序,列出给定区间内的所有特立独行的幸福数和它的独立性。

输入格式:

输入在第一行给出闭区间的两个端点:1<A<B≤104。

输出格式:

按递增顺序列出给定闭区间 [A,B] 内的所有特立独行的幸福数和它的独立性。每对数字占一行,数字间以 1 个空格分隔。

如果区间内没有幸福数,则在一行中输出 SAD

输入样例 1:

10 40

输出样例 1:

19 8
23 6
28 3
31 4
32 3

注意:样例中,10、13 也都是幸福数,但它们分别依附于其他数字(如 23、31 等等),所以不输出。其它数字虽然其实也依附于其它幸福数,但因为那些数字不在给定区间 [10, 40] 内,所以它们在给定区间内是特立独行的幸福数。

输入样例 2:

110 120

输出样例 2:

SAD

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

思路

主要工作有两个,一是判断素数,二是判断能不能迭代成1,并且记录迭代次数。

判断是否是素数用6步步长的方法。

判断是不是特立独行幸福数和迭代次数时用类似于素数筛的思想。先建立一个visited数组,当visited[i]==0时,代表i目前还是特立独行的幸福数。然后依次从A遍历到B。每次遍历时不断迭代,迭代过程中有重复出现的数字就代表出现了死循环,就停止迭代。迭代过程中产生的数x不是特立独行,就标记visited[x]==1,下次遍历x时就直接跳过。

AC代码

#include<bits/stdc++.h>
using namespace std;
const int MAXSIZE=1e4+5;
int A,B;
int sum=0;
int visited[MAXSIZE];//==0-->还是
int diedai[MAXSIZE];//记录迭代次数
bool isprime(int n)
{if(n==2||n==3) return true;if(n%6!=5&&n%6!=1) return false;for(int i=5;i*i<=n;i+=6) if(n%i==0||n%(i+2)==0) return false;return true;
}
int change(int x)
{int ans=0;while(x){int t=x%10;ans+=t*t;x/=10;}return ans;
}
int isfortun(int num)//返回-1表是不是
{if(visited[num]==1) return -1;map<int,int> mp;//用于判断是否进入死循环mp[num]=1;int x=num;int cnt=0;//迭代次数while(x!=1){int later=change(x);cnt++;if(later==1) return cnt;visited[later]=1;//出现死循环if(mp[later]!=0){visited[later]=1;return -1;}mp[later]=1;x=later;}
}
int main()
{cin>>A>>B;for(int i=A;i<=B;i++){if(visited[i]==1) continue;int a=isfortun(i);if(a==-1) visited[i]=1;else{diedai[i]=a;}}int cnt=0;for(int i=A;i<=B;i++){if(visited[i]==0){bool flag=isprime(i);int x=diedai[i]*((flag==true)?2:1);if(cnt!=0) cout<<endl;cout<<i<<" "<<x;cnt++;}}if(cnt==0)cout<<"SAD";
}

L2-2 老板的作息表

题目

分数 25

作者 陈越

单位 浙江大学

zcy.png

新浪微博上有人发了某老板的作息时间表,表示其每天 4:30 就起床了。但立刻有眼尖的网友问:这时间表不完整啊,早上九点到下午一点干啥了?

本题就请你编写程序,检查任意一张时间表,找出其中没写出来的时间段。

输入格式:

输入第一行给出一个正整数 N,为作息表上列出的时间段的个数。随后 N 行,每行给出一个时间段,格式为:

hh:mm:ss - hh:mm:ss

其中 hhmmss 分别是两位数表示的小时、分钟、秒。第一个时间是开始时间,第二个是结束时间。题目保证所有时间都在一天之内(即从 00:00:00 到 23:59:59);每个区间间隔至少 1 秒;并且任意两个给出的时间区间最多只在一个端点有重合,没有区间重叠的情况。

输出格式:

按照时间顺序列出时间表中没有出现的区间,每个区间占一行,格式与输入相同。题目保证至少存在一个区间需要输出。

输入样例:

8
13:00:00 - 18:00:00
00:00:00 - 01:00:05
08:00:00 - 09:00:00
07:10:59 - 08:00:00
01:00:05 - 04:30:00
06:30:00 - 07:10:58
05:30:00 - 06:30:00
18:00:00 - 19:00:00

输出样例:

04:30:00 - 05:30:00
07:10:58 - 07:10:59
09:00:00 - 13:00:00
19:00:00 - 23:59:59

代码长度限制

16 KB

Java (javac)

时间限制

900 ms

内存限制

128 MB

Python (python3)

时间限制

300 ms

内存限制

64 MB

其他编译器

时间限制

200 ms

内存限制

64 MB

栈限制

8192 KB

思路

将输入的所有作息按照开始时间进行排序,每个作息之间的间隔就是没有出现的区间。注意0点和最早的作息之间的间隔和最后一个作息和23:59之间的间隔

AC代码

#include<bits/stdc++.h>
using namespace std;
int h=0,m=0,s=0;
int cnt=0;
struct time{int h1,h2;int m1,m2;int s1,s2;
};
bool cmp(struct time a,struct time b)
{if(a.h1!=b.h1) return a.h1<b.h1;if(a.m1!=b.m1) return a.m1<b.m1;if(a.s1!=b.s1) return a.s1<b.s1;
}
bool compare(struct time a)//true-->cur在前
{if(h==a.h1&&m==a.m1&&s==a.s1) return false;if(h!=a.h1) return h<a.h1;if(m!=a.m1) return m<a.m1;if(s!=a.s1) return s<a.s1;
}
int main()
{struct time T[100005];int n;cin>>n;getchar();for(int i=0;i<n;i++){string s;getline(cin,s);T[i].h1=10*(s[0]-'0')+(s[1]-'0');T[i].h2=10*(s[11]-'0')+(s[12]-'0');T[i].m1=10*(s[3]-'0')+(s[4]-'0');T[i].m2=10*(s[14]-'0')+(s[15]-'0');T[i].s1=10*(s[6]-'0')+(s[7]-'0');T[i].s2=10*(s[17]-'0')+(s[18]-'0');}sort(T,T+n,cmp);/*cout<<endl;for(int i=0;i<n;i++){printf("%02d:%02d:%02d - %02d:%02d:%02d\n",T[i].h1,T[i].m1,T[i].s1,T[i].h2,T[i].m2,T[i].s2);}cout<<endl;*///int cnt=0;for(int i=0;i<n;i++){bool flag=compare(T[i]);if(flag){if(cnt!=0) cout<<endl;cnt++;printf("%02d:%02d:%02d - %02d:%02d:%02d",h,m,s,T[i].h1,T[i].m1,T[i].s1);}h=T[i].h2;m=T[i].m2;s=T[i].s2;}if(!(h==23&&m==59&&s==59)){if(cnt!=0) cout<<endl;printf("%02d:%02d:%02d - 23:59:59",h,m,s);}
}

L1-6 打PTA

题目

分数 15

作者 陈越

单位 浙江大学

打PTA.jpg

传说这是集美大学的学生对话。本题要求你做一个简单的自动问答机,对任何一个问句,只要其中包含 PTA 就回答 Yes!,其他一概回答 No.

输入格式:

输入第一行给出一个整型范围内的正整数 N,随后 N 行,每行给出一个长度不超过 80 的字符串,为用户输入的句子,由英文字母、数字、空格和标点符号组成,以回车结束。

输出格式:

对每一行句子,如果其结尾字符为问号 ? 则判断此句中有无 PTA?如果有则在一行中输出 Yes!,否则输出 No.。如果不是问号结尾,则敷衍地回答 enen

输入样例:

5
Hello!
Do you still play WZRY?
Chi Ji?
you play PTA ah?
how about pta site?

输出样例:

enen
No.
No.
Yes!
No.

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

C++ (g++)

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{int n;cin>>n;getchar();for(int i=0;i<n;i++){string s;getline(cin,s);int len=s.length();if(i!=0) cout<<endl;if(len>0&&s[len-1]!='?') cout<<"enen";else{int pos=s.find("PTA");if(pos==-1) cout<<"No.";else cout<<"Yes!";}}
}

L2-3 浪漫侧影

思路

分数 25

作者 陈越

单位 浙江大学

v.JPG

“侧影”就是从左侧或者右侧去观察物体所看到的内容。例如上图中男生的侧影是从他右侧看过去的样子,叫“右视图”;女生的侧影是从她左侧看过去的样子,叫“左视图”。

520 这个日子还在打比赛的你,也就抱着一棵二叉树左看看右看看了……

我们将二叉树的“侧影”定义为从一侧能看到的所有结点从上到下形成的序列。例如下图这棵二叉树,其右视图就是 { 1, 2, 3, 4, 5 },左视图就是 { 1, 6, 7, 8, 5 }。

fig.JPG

于是让我们首先通过一棵二叉树的中序遍历序列和后序遍历序列构建出一棵树,然后你要输出这棵树的左视图和右视图。

输入格式:

输入第一行给出一个正整数 N (≤20),为树中的结点个数。随后在两行中先后给出树的中序遍历和后序遍历序列。树中所有键值都不相同,其数值大小无关紧要,都不超过 int 的范围。

输出格式:

第一行输出右视图,第二行输出左视图,格式如样例所示。

输入样例:

8
6 8 7 4 5 1 3 2
8 5 4 7 6 3 2 1

输出样例:

R: 1 2 3 4 5
L: 1 6 7 8 5

感谢用户DSA修正数据!

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

思路

根据二叉树的中序遍历和后序遍历,构造出二叉树,然后再对二叉树层序遍历。

左视图就是只输出每一层的第一个。

右视图就是只输出每一层就最后一个。

建树的话用递归的方法建树,方法如下。

函数create(int l1,int r1,int l2,int r2)。l1,r1为中序遍历的左右端点;l2,r2为后序遍历的左右端点。数组arr1表示中序遍历,数组arr2表示后序遍历。

1、如果(l1>r1)或(l2>r2),结束函数。

2、建根节点,值为arr2[r2]。

3、在中序遍历中找到值为arr2[r2]的位置,记为pos。那么左右子树的节点数量分别为int leftCount=pos-l1,int rightCount=r1-pos;。那么[l1,pos-1]为左子树的中序遍历,[pos+1,r1]为右子树的中序遍历;[l2,l2+leftCount-1]为左子树的后序遍历,[l2+leftCount,r2-1]为右子树的后序遍历。

4、递归调用create建造左右子树,回到步骤。

AC代码

#include<bits/stdc++.h>
using namespace std;
struct node{int value;node* left;node* right;
};
int n;
int arr1[30];//中序遍历
int arr2[30];//后序遍历
node* create(int l1,int r1,int l2,int r2)
{//参数分别为中序的首尾和后续的首尾if(l1>r1||l2>r2) return NULL;node* root=new node;root->value=arr2[r2];root->left=root->right=NULL;//找中序根的位置int pos=-1;for(pos=l1;pos<=r1;pos++){if(arr1[pos]==root->value)break;}//递归建树int leftCount=pos-l1;int rightCount=r1-pos;node* lchild=create(l1,pos-1,l2,l2+leftCount-1);node* rchild=create(pos+1,r1,l2+leftCount,r2-1);root->left=lchild;root->right=rchild;return root;
}
vector<int> gleft;
vector<int> gright;
void bfs(node* root)
{if(!root) return;queue<node*> q;q.push(root);while(!q.empty()){int len=q.size();for(int i=0;i<len;i++){node* cur=q.front();q.pop();if(i==0) gleft.push_back(cur->value);if(i==len-1) gright.push_back(cur->value);if(cur->left) q.push(cur->left);if(cur->right) q.push(cur->right);}}
}
int main()
{cin>>n;for(int i=0;i<n;i++) cin>>arr1[i];for(int i=0;i<n;i++) cin>>arr2[i];node* root=create(0,n-1,0,n-1);bfs(root);cout<<"R:";for(auto x:gright)cout<<" "<<x;cout<<endl<<"L:";for(auto x:gleft)cout<<" "<<x;
}

L1-2 两小时学完C语言

题目

分数 5

作者 陈越

单位 浙江大学

Q.JPG

知乎上有个宝宝问:“两个小时内如何学完 C 语言?”当然,问的是“学完”并不是“学会”。

假设一本 C 语言教科书有 N 个字,这个宝宝每分钟能看 K 个字,看了 M 分钟。还剩多少字没有看?

输入格式:

输入在一行中给出 3 个正整数,分别是 N(不超过 400 000),教科书的总字数;K(不超过 3 000),是宝宝每分钟能看的字数;M(不超过 120),是宝宝看书的分钟数。

题目保证宝宝看完的字数不超过 N。

输出格式:

在一行中输出宝宝还没有看的字数。

输入样例:

100000 1000 72

输出样例:

28000

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{int n,m,k;cin>>n>>m>>k;cout<<n-m*k;
}

L1-4 降价提醒机器人

题目

分数 10

作者 DAI, Longao

单位 杭州百腾教育科技有限公司

小 T 想买一个玩具很久了,但价格有些高,他打算等便宜些再买。但天天盯着购物网站很麻烦,请你帮小 T 写一个降价提醒机器人,当玩具的当前价格比他设定的价格便宜时发出提醒。

输入格式:

输入第一行是两个正整数 N 和 M (1≤N≤100,0≤M≤1000),表示有 N 条价格记录,小 T 设置的价格为 M。

接下来 N 行,每行有一个实数 Pi​(−1000.0<Pi​<1000.0),表示一条价格记录。

输出格式:

对每一条比设定价格 M 便宜的价格记录 P,在一行中输出 On Sale! P,其中 P 输出到小数点后 1 位。

输入样例:

4 99
98.0
97.0
100.2
98.9

输出样例:

On Sale! 98.0
On Sale! 97.0
On Sale! 98.9

AC代码

#include<iostream>
#include<cstdio>
using namespace std;
int main()
{int n,m;cin>>n>>m;int cnt=0;for(int i=0;i<n;i++){double p;cin>>p;if(p<m){if(cnt!=0) cout<<endl;printf("On Sale! %.1lf",p);cnt++;}}
}

L1-7 天梯赛的善良

题目

分数 20

作者 陈越

单位 浙江大学

天梯赛是个善良的比赛。善良的命题组希望将题目难度控制在一个范围内,使得每个参赛的学生都有能做出来的题目,并且最厉害的学生也要非常努力才有可能得到高分。

于是命题组首先将编程能力划分成了 106 个等级(太疯狂了,这是假的),然后调查了每个参赛学生的编程能力。现在请你写个程序找出所有参赛学生的最小和最大能力值,给命题组作为出题的参考。

输入格式:

输入在第一行中给出一个正整数 N(≤2×104),即参赛学生的总数。随后一行给出 N 个不超过 106 的正整数,是参赛学生的能力值。

输出格式:

第一行输出所有参赛学生的最小能力值,以及具有这个能力值的学生人数。第二行输出所有参赛学生的最大能力值,以及具有这个能力值的学生人数。同行数字间以 1 个空格分隔,行首尾不得有多余空格。

输入样例:

10
86 75 233 888 666 75 886 888 75 666

输出样例:

75 3
888 2

代码长度限制

16 KB

时间限制

200 ms

内存限制

64 MB

栈限制

8192 KB

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{int minn=1e8;int cnt1=0;int maxn=-1;int cnt2=0;int n;cin>>n;for(int i=0;i<n;i++){int x;cin>>x;if(x<minn){minn=x;cnt1=1;}else if(x==minn) cnt1++;if(x>maxn){maxn=x;cnt2=1;}else if(x==maxn) cnt2++;}cout<<minn<<" "<<cnt1<<endl;cout<<maxn<<" "<<cnt2;
}

L1-3 程序员买包子

题目

分数 10

作者 陈越

单位 浙江大学

bao.jpg

这是一条检测真正程序员的段子:假如你被家人要求下班顺路买十只包子,如果看到卖西瓜的,买一只。那么你会在什么情况下只买一只包子回家?
本题要求你考虑这个段子的通用版:假如你被要求下班顺路买 N 只包子,如果看到卖 X 的,买 M 只。那么如果你最后买了 K 只包子回家,说明你看到卖 X 的没有呢?

输入格式:

输入在一行中顺序给出题面中的 N、X、M、K,以空格分隔。其中 N、M 和 K 为不超过 1000 的正整数,X 是一个长度不超过 10 的、仅由小写英文字母组成的字符串。题目保证 N=M。

输出格式:

在一行中输出结论,格式为:

  • 如果 K=N,输出 mei you mai X de
  • 如果 K=M,输出 kan dao le mai X de
  • 否则输出 wang le zhao mai X de.
    其中 X 是输入中给定的字符串 X。

输入样例 1:

10 xigua 1 10

输出样例 1:

mei you mai xigua de

输入样例 2:

10 huanggua 1 1

输出样例 2:

kan dao le mai huanggua de

输入样例 3:

10 shagua 1 250

输出样例 3:

wang le zhao mai shagua de

AC代码

#include<bits/stdc++.h>
using namespace std;
int main()
{int n,m,k;string x;cin>>n>>x>>m>>k;if(k==n) cout<<"mei you mai "<<x<<" de";else if(k==m) cout<<"kan dao le mai "<<x<<" de";else cout<<"wang le zhao mai "<<x<<" de";
}

PS

还有两题没写,就不发了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/815797.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入了解边缘AI的发展

人工智能先进功能的融合、物联网设备的广泛采用以及边缘计算的强大性能释放了边缘AI的潜力。这种变革性的协同作用涵盖了辅助医疗诊断、自动驾驶和仓库物流自动化等应用。 边缘计算起源于1990年代的内容分发网络&#xff0c;现在被广泛使用&#xff0c;尤其是在边缘AI领域。企…

Vue入门:天不生Vue,前端万古如长夜 - Vue从入门到放弃

&#x1f44b; Vue环境搭建 首先&#xff0c;搭一个打代码的环境 1.安装node.js 在使用VS Code之前&#xff0c;需要安装Vue的开发环境。 安装Vue的最简单方法是使用npm包管理器&#xff0c;先安装Node.js和npm。 node官网 ​​ 2.配置环境变量 在nodejs安装目录下新建…

免费分享Springboot+Vue的影院管理系统源码,真酷!

今天给大家分享一套基于SpringbootVue的影院管理系统源码&#xff0c;在实际项目中可以直接复用。(免费提供&#xff0c;文末自取) 一、系统运行图 1、登陆页面 2、系统后台 3、选座功能 影院管理系统通常具有以下七个功能点&#xff1a; 1.电影管理&#xff1a; 包括电影信…

c++ - 动态载入DLL接口,可以给IDA静态分析增加一点麻烦

文章目录 c - 动态载入DLL接口&#xff0c;可以给IDA静态分析增加一点麻烦概述笔记测试工程test_load_dll_then_call_api.cppCMyUser32Dll.hCMyUser32Dll.cppLateLoad.hIDA静态分析引入表中没有PostMessageW字符串查找能找到PostMessageW备注看看CMyUser32Dll.h编译完的样子备注…

CSS快速入门

目录 一、CSS介绍 1、什么是CSS&#xff1f; ​编辑2、基本语法规范 3、引入方式 4、规范 二、CSS选择器 1、标签选择器 2、类&#xff08;class&#xff09;选择器 3、id选择器 4、通配符选择器 5、复合选择器 三、常用CSS 1、color 2、font-size 3、border 4…

【300套】基于Springboot+Vue的Java毕业设计项目(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f9e1;今天给大家分享300的Java毕业设计&#xff0c;基于Springbootvue框架&#xff0c;这些项目都经过精心挑选&#xff0c;涵盖了不同的实战主题和用例&#xff0c;可做毕业…

电影《你想活出怎样的人生》观后感

上周去看了宫崎骏电影《你想活出怎样的人生》&#xff0c;就像作为导演问观众的一个问题一样&#xff0c;宫崎骏老爷子&#xff0c;在电影中&#xff0c;给出了他的一些开放式答案。自己可是说是宫崎骏的粉丝&#xff0c;宫崎骏老爷子的大部分电影&#xff0c;自己基本都看过了…

clion最新安装教程

还在用Dev-C吗&#xff1f;也尝试了很多C编辑器&#xff0c;不是太老&#xff0c;就是太复杂。对于c开发者来说clion真的好用&#xff0c;CLion是一款专为开发C及C所设计的跨平台IDE。难受的是cion并不免费&#xff0c;仿佛是在证明好货不贵的道理&#xff0c;只能免费用30天。…

2024年少儿编程赛事时间表整理

01 信息学奥赛路线比赛 来源:https://www.noi.cn/ 首先,信息学奥赛是升学最有帮助的一个赛事了,从CSP-J/P开始到NOIP再到最后的NOI,对科技特长生、高考加分都有较大裨益,但相对难度也是最大的。 小学可以参加的是CSP-J比赛,但是和初中生一起考试,不占优势,胜在早入门…

4.14学习总结

java网络编程 一.网络编程的概念和原理 概念: 网络编程是指通过计算机网络进行数据传输和通信的编程技术。在网络编程中&#xff0c;可以实现不同计算机之间的数据交互和通信&#xff0c;从而实现分布式系统、客户端-服务器应用等。 Java网络编程基于TCP/IP协议栈进行通信&…

离谱!奇安信人事总监透露:Web安全不会岗位这些就别投简历了

有人的地方就有江湖&#xff0c;有互联网安全的地方&#xff0c;就必然有Web安全工程师的身影。但其实Web安全是近几年才备受关注的&#xff0c;从事这方面的专业人员并不多&#xff0c;这就导致整个市场Web安全研究员的供求严重不平衡。 这种供求不平衡直接反映在Web安全研究…

软考之零碎片段记录(十五)+复习巩固(十)

一、学习 1. 多对多关系模式 举例&#xff1a;学生和课程。顾客和商品等。 多对多关系的确立需要有中间表&#xff0c;需要使用两个外键确认表中的唯一数据。 2. 数据库范式 1nf 表中每个字段都是原子性不可查分的。在关系&#xff08;或表&#xff09;中&#xff0c;每一行…

使用Python的Pillow库进行图像处理书法参赛作品

介绍&#xff1a; 在计算机视觉和图像处理领域&#xff0c;Python是一种强大而流行的编程语言。它提供了许多优秀的库和工具&#xff0c;使得图像处理任务变得轻松和高效。本文将介绍如何使用Python的wxPython和Pillow库来选择JPEG图像文件&#xff0c;并对选中的图像进行调整和…

SpringBoot自动装配

清明前夕&#xff0c;我发表了一篇与Spring Cloud有关的文章&#xff0c;原计划在这篇文章之后&#xff0c;就梳理Eureka注册中心的相关知识。然而在跟踪之后&#xff0c;我才发现上来就谈Eureka组件的实现原理是不现实的&#xff0c;因为我根本不清楚SpringBoot是如何集成Eure…

【笔记】mysql版本6以上时区问题

前言 最近在项目中发现数据库某个表的createTime字段的时间比中国时间少了13个小时&#xff0c;只是在数据库中查看显示时间不对&#xff0c;但是在页面&#xff0c;又是正常显示中国时区的时间。 排查 项目中数据库的驱动使用的是8.0.19&#xff0c;驱动类使用的是com.mysq…

Open CASCADE学习|实现Extrude功能

首先定义了一些基本的几何元素&#xff0c;如线、圆和平面&#xff0c;然后使用makeExtrudebydir函数来对一个面进行挤出操作。下面是详细过程&#xff1a; 定义Extrude函数&#xff1a;makeExtrudebydir函数接受一个TopoDS_Shape对象和一个gp_Vec对象作为参数。TopoDS_Shape是…

HashMap与HashSet的不安全问题

HashSet的不安全问题 HashSet与ArrayList一样也存在不安全的问题&#xff0c;当多线程时也会出现ConcurrentModificationException&#xff0c;并发修改异常需要提出解决方案 问题 public static void main(String[] args) {Set<Integer> set new HashSet<>();…

1.MMD模型动作场景镜头的导入及视频导出

界面介绍 MIKUMIKUDANCE926版本 MMD的工具栏模型骨骼帧的窗口&#xff0c;在不同时间做不同动作&#xff0c;可以在这里打帧操作时间曲线操作窗口&#xff0c;控制模型两个动作之间的过渡模型操作窗口&#xff0c;导入模型选择模型相机操作&#xff0c;控制相机远近&#xf…

Vol.44 一个分享网站的网站,每个月8.7万访问量

哈咯&#xff0c;各位朋友好啊&#xff0c;我是欧维&#xff0c;今天要给大家分享的网址是Fuun.fun&#xff0c;奇趣网站收藏家&#xff1b; 它的网址是&#xff1a;FUUN.FUN 这是一个我经常逛的网站&#xff0c;为什么我经常逛呢&#xff1f;因为可以从中发现一些有意思的网站…

上位机图像处理和嵌入式模块部署(智能硬件的开发)

【 声明&#xff1a;版权所有&#xff0c;欢迎转载&#xff0c;请勿用于商业用途。 联系信箱&#xff1a;feixiaoxing 163.com】 目前&#xff0c;用上位机软件虽然可以部署项目&#xff0c;但是它本身有自己的缺点&#xff0c;那就是稳定性差、价格贵。稳定性这部分&#xff0…