2018-2019赛季多校联合新生训练赛第三场

2024-03-06 11:40

本文主要是介绍2018-2019赛季多校联合新生训练赛第三场,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题 A: 变形虫时间限制: 1 Sec 内存限制: 128 MB
提交: 667 解决: 473
题目描述Bessie是一只变形虫,一开始它的体重是A。在地板上从左往右依次放着N块蛋糕,第i块蛋糕的重量是Wi。变形虫从左边爬到右边,每次遇到一块蛋糕,如果蛋糕的重量恰好等于变形虫当前的重量,那么变形虫就吃掉这块蛋糕,吃完蛋糕后变形虫的重量增加了一倍;如果蛋糕的重量不等于变形虫当前的重量,那么变形虫永远也吃不了这块蛋糕了。变形虫只能从左往右爬,不能吃了某蛋糕后再往左爬。你的任务是计算变形虫的最终体重是多少。
输入第一行,两个整数:A,N。

第二行,N个整数,空格分开,第i个整数就是第i块蛋糕的重量Wi。(1 ≤ A ≤ 1000000000,1 ≤ N ≤ 200,1 ≤ Wi ≤ 1000000000。)

输出一个整数,变形虫的最终体重。
样例输入复制样例数据

1 5
2 1 3 1 2
样例输出4

提示变形虫首先会吃掉第2块蛋糕,体重变成2。然后变形虫再吃掉第5块蛋糕,体重变成4。

#include<stdio.h>
int main()
{int a,n,i,b[200];scanf("%d%d",&a,&n);for(i=0;i<n;i++){scanf("%d",&b[i]);if(a==b[i])a=a+b[i];}printf("%d\n",a);return 0;
}

问题 B: 冬眠时间限制: 1 Sec 内存限制: 128 MB
提交: 1110 解决: 324
题目描述麻雀帕西和青蛙弗洛格是好玩伴,它们经常一起比赛唱歌。但冬天来了,青蛙弗洛格冬眠了,它的睡眠深度是D。麻雀帕西觉得好无聊,于是它想办法要唤醒弗洛格。麻雀帕西只会唱N首歌,第i首歌的音量是Si。每听完一首歌,青蛙弗洛格的睡眠深度就会减少,减少的值等于它听到的歌的音量。当青蛙弗洛格的睡眠深度大于0的时候,它会继续冬眠,当睡眠深度小于或者等于0时,它就会被唤醒了。麻雀帕西会从第1首歌开始唱,唱完第1首歌后如果弗洛格还没醒就接着唱第2首歌,如果唱完第2首歌弗洛格还没醒就接着唱第3首歌,依次类推,如果唱完第N首歌后弗洛格还没醒,那么麻雀帕西又重新从第1首歌开始唱,就像循环播放音乐一样,一直到青蛙弗洛格被唤醒为止,那么麻雀帕西总共唱了多少首歌?
输入第一行,两个整数: D 和 N。

第二行,N个整数,空格分开,第i个整数就是第i首歌的音量Si。

输出一个整数,麻雀帕西总共唱了多少首歌后,弗洛格会被唤醒?

样例输入复制样例数据

13 3
5 2 4
样例输出4

提示麻雀帕西唱完第1首歌后,青蛙弗洛格睡眠深度变成8,

麻雀帕西唱完第2首歌后,青蛙弗洛格睡眠深度变成6,

麻雀帕西唱完第3首歌后,青蛙弗洛格睡眠深度变成2,

麻雀帕西再次唱完第1首歌后,青蛙弗洛格睡眠深度变成-3,青蛙弗洛格会被唤醒。

对80%的数据,1 ≤ D ≤ 10000,1 ≤ N ≤ 50,1 ≤ Si ≤ 100。

另外20%的数据,1 ≤ D ≤ 2000000000,1 ≤ N ≤ 50,1 ≤ Si ≤ 3。

#include<stdio.h>
long long int a[50],sum;
int main()
{long long int d,n,i;scanf("%lld%lld",&d,&n);for(i=0;i<n;i++)scanf("%lld",&a[i]);while(1){if(d<=0)break;for(i=0;i<n;i++){d-=a[i];sum++;if(d<=0)break;}}printf("%lld\n",sum);return 0;
}

问题 C: 进制转换时间限制: 1 Sec 内存限制: 128 MB
提交: 375 解决: 99
题目描述乐乐正在学进制转换,但他老是搞不清楚到底自己是否做对,请你编一程序实现两种不同进制之间的数据转换,帮他检验。
输入共有三行,第一行是一个正整数,表示需要转换的数的进制n(2≤n≤16),第二行是一个n进制数,若n>10则用大写字母A~F表示数码10~15,并且该n进制数对应的十进制的值不超过1000000000,第三行也是一个正整数,表示转换之后的数的进制m(2≤m≤16)。
输出仅一行,包含一个正整数,表示转换之后的m进制数。
样例输入复制样例数据

16
FF
2
样例输出1111111

#include<stdio.h>
#include<math.h>
char a[1000000000];
int b[10000000];
int main()
{long long int i,d,n,m,k,sum=0;scanf("%lld%s%lld",&n,a,&m);k=strlen(a);d=k;for(i=0;i<k;i++){if(a[i]>='0'&&a[i]<='9')sum=sum+pow(16,d-1)*(a[i]-48);elsesum=sum+pow(16,d-1)*(a[i]-55);d--;}i=0;while(sum>0){b[i]=sum%m;i=i+1;sum=sum/m;}for(i--;i>=0;i--)printf("%d",b[i]);printf("\n");return 0;
}
OJ评测时显示运行错误,水手我实在是找不出来了,运行结果是对的

问题 D: 最大的数II时间限制: 1 Sec 内存限制: 128 MB
提交: 754 解决: 419
题目描述今天,羊村要举行一次“知识竞赛”,很多羊都去参加了,村长见羊太多,决定先举行预选,选出一些人,再参加比赛,给出一个正整数M,求S=1+2+3+…+N的值中,符合条件S<=M的最大的N的值。如给出M的值为7,则N为3,因为1+2+3=6,1+2+3+4=10,所以符合S<=M的条件下,N的最大值为3。对于给定的M的值,喜羊羊很快就说出了符合条件的N的值。现在请你编写一个解决这个问题的程序。
输入只有一个数,就是M的值。(M<=1000000000)
输出只有一个数,就是符合题目条件的N的最大值。
样例输入复制样例数据

7
样例输出3

#include<stdio.h>
int main()
{int m,i=1,sum=0;scanf("%d",&m);while(1){sum=sum+i;i++;if(sum<=m&&sum+i>m)break;}printf("%d\n",i-1);return 0;
}

问题 E: 取数排列时间限制: 1 Sec 内存限制: 128 MB
提交: 70 解决: 43
题目描述取1到N共N个连续的数字(1≤N≤9),组成每位数不重复的所有可能的N位数,按从小到大的顺序进行编号。当输入一个编号M时,就能打印出与该编号对应的那个N位数。例如,当N=3时,可组成的所有三位数为:

那么,输入编号M=2时,则输出132。

在这里插入图片描述

输入包括两个数,即正整数N(1 <= N <= 9)和正整数M(1 <= M <= 362880)。
输出只有一行,即与输入的编号M对应的那个N位数。
样例输入复制样例数据

3 2
样例输出132

待续

问题 F: 懒羊羊找朋友时间限制: 1 Sec 内存限制: 128 MB
提交: 239 解决: 83
题目描述最近电视上热播“喜羊羊与灰太狼”,大家都说“做人要做懒羊羊”,为什么呢?因为他不愿意多做一个动作、不愿意多动一个脑筋,甚至懒得张嘴吃饭,简直是懒的无与伦比!

话说羊村的羊还真多啊!每周一早晨,羊村老村长慢羊羊同志学着人类的学校,把所有羊列队在广场上进行思想教育,主要是保持警惕防止狼类的攻击,当然也包括对懒羊羊之类的“异类”进行批评教育。

羊群列队成一个 m*n 的方阵,每只羊站在一个格子里,而且是长期固定的,便于点名啊:)晕倒!当然,这样一来的好处是,大家都知道自己的朋友站在哪个位置,虽然它们可能互相看不见,但心里都知道,并且在老村长进行无聊的训教时,大家都还想赶快结束赶快找离自己最近的朋友交流周末的开心事呢?

懒羊羊也想尽快找到自己的好朋友聊天,但是他既不愿意多走路、又不愿意动脑筋去想怎么走,所以就请智羊羊同学帮它编个程序,以便快速定位找到离它最近的一位好朋友。

如果你是智羊羊,你怎么完成这个任务呢?

输入第 1 行为两个整数 m 和 n,2<=m,n<=100。

第 2 行为懒羊羊的位置 x,y,表示在第 x 行 y 列。

以 下 m 行 为一 个 m*n 的数字 方阵,所 有 a[i,j]的 值相等的表示是好 朋友,1<=a[i,j]<=100。

每行的两个数之间都有一个空格分隔。

输出输出一行两个数 x1,y1,表示懒羊羊最近的一个朋友的位置在第 x1 行 y1 列,之间用一个空格隔开。

如果最近的的朋友不只一个,则输出 x1 最小的,如果还不唯一则输出 y1 最小的。

数据保证懒羊羊一定有朋友。

样例输入复制样例数据

4 4
1 2
2 1 2 1
1 3 1 3
2 1 2 2
2 2 1 3
样例输出1 4

提示懒羊羊(1,2)有 5 个朋友,其中 3 个朋友(2,1)、(2,3)、(1,4)离它的距离都是一样的(2),但是其中的 x1=1 是最小的。

待续

问题 G: 求满足条件的数时间限制: 1 Sec 内存限制: 128 MB
提交: 699 解决: 307
题目描述输入N(n<=32767),输出N以内的整数(包括N),使其数字之和为15,每行输出8个数。输出场宽为6。
输入只包括一个整数N。
输出符合条件的数。
样例输入复制样例数据

200
样例输出 69 78 87 96 159 168 177 186
195

#include<stdio.h>
int main()
{int n,j,i=0;scanf("%d",&n);for(j=69;j<=n;j++){if((j%10+j/10%10+j/100%10+j/1000%10+j/10000%10)==15){i++;printf("%6d",j);if(i%8==0)printf("\n");}}return 0;
}

问题 H: 自然数无序拆分时间限制: 1 Sec 内存限制: 128 MB
提交: 137 解决: 38
题目描述美羊羊给喜羊羊和沸羊羊出了一道难题,说谁能先做出来,我就奖励给他我自己做的一样礼物。沸羊羊这下可乐了,于是马上答应立刻做出来,喜羊羊见状,当然也不甘示弱,向沸羊羊发起了挑战。

可是这道题目有一些难度,喜羊羊做了一会儿,见沸羊羊也十分头疼,于是就来请教你。

题目是这样的:

把自然数N(N<=100)分解为若干个自然数之和,求出有几种情况。

如N=5时,有7种情况

5=1+1+1+1+1

5=1+1+1+2

5=1+1+3

5=1+2+2

5=1+4

5=2+3

5=5

怎么样?你要加油帮助喜羊羊哦!

输入一个自然数N(N<=100)
输出无序拆分的种数。
样例输入复制样例数据

5
样例输出7

待续

问题 I: 大写字母的序列时间限制: 1 Sec 内存限制: 128 MB
提交: 643 解决: 202
题目描述喜羊羊最近对序列有了浓厚的兴趣,他喜欢用“小”的大写字母表示“小”的数。所谓“小”的大写字母就是大写字母越在前就越小,即:A<B<C<D<E……<Y<Z。喜羊羊喜欢改变原来序列的顺序,然后重新排序后,再写出字母的一个排列,自己再写出这个大写字母所代表的序列。现在,喜羊羊让你编一个程序,模拟喜羊羊干的事,为了方便,这里只有三个数,从小到大排序后分别代表A、B、C。
输入第一行三个整数,不一定按顺序。三个数均小于等于 100。 第二行包含三个大写字母“A”,“B”和“C”(没有空格),代表所需要的顺序。
输出输出一行,按照所需顺序输出三个整数,相邻两数之间用一个空格隔开。
样例输入复制样例数据

1 5 3
ABC
样例输出1 3 5
问题 J: 弗洛格时间限制: 1 Sec 内存限制: 128 MB
提交: 581 解决: 439
题目描述青蛙弗洛格和它的妈妈是火星动物,在火星上,每年都有12个月,每个月的天数都是30天,每个月都是从1号开始,然后是2号,…,每月的最后一天都是30号。弗洛格妈妈想考查一下弗洛格的数学水平,于是问道:“今天是几号?”,弗洛格回答:“27号!”,妈妈说:“正确!”。妈妈接着问:“前1天是几号?”,弗洛格回答:“26号!太简单了!我读一年级就会了!”。妈妈再问:“前N天是几号?”,弗洛格皱起眉头:“这个有点难,我要写个程序来算”。由于弗洛格的编程水平一般,你能帮帮它吗?
输入一个整数N,表示妈妈问弗洛格,前N天是几号?
输出一个整数。
样例输入复制样例数据

2
样例输出25

提示对于90%的数据,1 ≤ N ≤ 26。即问题的答案一定是本月的某一天。

另外10%的数据,27 ≤ N ≤ 50。

#include<stdio.h>
int main()
{int n;scanf("%d",&n);if(n<=27)printf("%d\n",27-n);else{n=30-(n-27);printf("%d\n",n);}return 0;
}

问题 K: 移动次数最少时间限制: 1 Sec 内存限制: 128 MB
提交: 153 解决: 33
题目描述有n堆糖果(2≤n≤200),排成一行,编号分别为1,2,…n。

已知每堆糖果有一定的颗数,且颗数之和均为n的倍数。移动各堆中的任意颗糖果,使每堆的数量达到相同,且移动次数最少。

移动规则:

每次可以移动任意的糖果颗数,第1堆可以移向第2堆,第2堆可以移向第1堆或第3堆,。。。。。。 第n 堆只可以移向第n -1堆。

例如,当n=4时:

堆号 1 2 3 4

颗数 9 8 17 6

移动的方法有许多种, 其中的一种方案:

① 第3堆向第4堆移动4颗,成为:9 8 13 10

② 第3堆向第2堆移动3颗,成为:9 11 10 10

③ 第2堆向第1堆移动1颗,成为:10 10 10 10

经过三次移动,每堆都成为10颗。

输入有两行。

第一行一个整数n。

第二行n个整数,用空格分隔。

输出一个整数(表示最少移动次数)。
样例输入复制样例数据

4
9 8 17 6
样例输出
3

待续

问题 L: 小矮人时间限制: 1 Sec 内存限制: 128 MB
提交: 629 解决: 429
题目描述最初出现“七个小矮人”的是德国著名童话集《格林童话》之中的《白雪公主》。原文讲述了一个可爱美丽的公主因为被恶毒后母嫉妒其美貌而被迫逃到森林,在缘分安排下偶遇善良的七个小矮人。最后在他们帮助下,破解了后母的诅咒,找到了王子的真爱的故事。七个小矮人的姓名分别是:万事通、害羞鬼、瞌睡虫、喷嚏精、开心果、迷糊鬼、爱生气。白雪公主经常为这七个小矮人讲故事。白雪公主还为这七个小矮人安排了学号,学号分别是1至7号。有一次,白雪公主又邀请七个小矮人来听她讲故事,但是只来了六个小矮人,那么缺席的那个小矮人是谁呢?
输入一行,6个学号,空格分开,表示来听故事的六个小矮人的学号。
输出没来听故事的小矮人的学号。
样例输入复制样例数据

3 5 2 1 7 4
样例输出6

#include<stdio.h>
int main()
{int i,t,a[8]={0};for(i=1;i<7;i++){scanf("%d",&t);a[t]++;}for(i=1;i<8;i++)if(a[i]==0){printf("%d\n",i);break;}return 0;
}

问题 M: 小米时间限制: 1 Sec 内存限制: 128 MB
提交: 563 解决: 473
题目描述小米同学现在读四年级,小米同学想知道自己成年后的身高大概是多少。于是小米同学上网查找资料,终于找到了一条计算公式:

1、如果小米是男生,那么成年后身高 = (父亲身高+母亲身高+13厘米)div 2

2、如果小米是女生,那么成年后身高 = (父亲身高+母亲身高-13厘米) div 2

输入一行,三个整数:father、mother、me。其中father是父亲身高,mother是母亲身高,me如果是1,则代表小米是男生;me如果是0,则代表小米是女生。(140 ≤ father ≤ 200,140 ≤ mother ≤ 200。 me=1或者me=0。)
输出一个整数,表示小米同学成年后的身高。
样例输入复制样例数据

174 162 0
样例输出161
提示父亲身高174,母亲身高161,小米是女生,因此身高是

(174+162-13)div 2 = 323 div 2 = 161

题目中的div是表示整除, A div B 表示的意义是A除以B的商,忽略余数。

例如: 10 div 2 = 5,因为10除以2的商是5。 9 div 2 = 4,因为9除以2的商是4。

#include<stdio.h>
int main()
{int f,m,n,max;scanf("%d%d%d",&f,&m,&n);if(n==1)max=f+m+13;elsemax=f+m-13;printf("%d\n",max/2);return 0;
}

问题 N: 小球时间限制: 1 Sec 内存限制: 128 MB
提交: 473 解决: 177
题目描述有R个红色盒子和B个蓝色盒子,还有R个红色小球和B个蓝色小球。每个盒子只能装一个小球,每个小球都要放在一个盒子里。如果把一个红色小球放在一个红色盒子里,那么得分是C。如果把一个蓝色小球放在一个蓝色盒子里,那么得分是D。如果把一个红色小球放在一个蓝色盒子里,那么得分是E。如果把一个蓝色小球放在一个红色盒子里,那么得分也是E。现在给出R,B,C,D,E。应该如何放置这些小球进盒子,才能使得总得分最大?输出最大的总得分。
输入一行,5个整数,分别是R,B,C,D,E。(1 ≤ R ≤ 100,1 ≤ B ≤ 100, -1000 ≤ C,D,E ≤ 1000)
输出一个整数,最大总得分。
样例输入复制样例数据

2 3 100 400 200
样例输出1400

待续

问题 O: 找最长良序字符串时间限制: 1 Sec 内存限制: 128 MB
提交: 449 解决: 184
题目描述我们将“ABC”或“ACEG”等类似的字串称为良序字串(因为它们是按ASCII码排列的),而像“ACB”或“ACCD”或“AGCD”则不可称为良序字串。

编写程序,将键入的一串字符中的最长良序字串找出来,并输出其长度。

输入一串字符(长度≤255)。
输出仅一行,一个最长良序字串的长度。
样例输入复制样例数据

23423555423567
样例输出5

待续

这篇关于2018-2019赛季多校联合新生训练赛第三场的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/779952

相关文章

BUUCTF靶场[web][极客大挑战 2019]Http、[HCTF 2018]admin

目录   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 [web][HCTF 2018]admin 考点:弱密码字典爆破 四种方法:   [web][极客大挑战 2019]Http 考点:Referer协议、UA协议、X-Forwarded-For协议 访问环境 老规矩,我们先查看源代码

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果: 解密后的数据就是正常数据: 后端:使用的是spring-cloud框架,在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.0-jre</version></dependency> 编写一个AES加密

C和指针:结构体(struct)和联合(union)

结构体和联合 结构体 结构体包含一些数据成员,每个成员可能具有不同的类型。 数组的元素长度相同,可以通过下标访问(转换为指针)。但是结构体的成员可能长度不同,所以不能用下标来访问它们。成员有自己的名字,可以通过名字访问成员。 结构声明 在声明结构时,必须列出它包含的所有成员。 struct tag {member-list} variable-list ; 定义一个结构体变量x(包含

2018秋招C/C++面试题总结

博主从8月中旬开始大大小小面试了十几家公司,至今也许是告一段落吧,希望后面会有好结果,因此总结记录一些C/C++方向常见的问题。和大家一起学习! 参考了互联网的各种资源,自己尝试归类整理,谢谢~ 一、C和C++的区别是什么? C是面向过程的语言,C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛。 C中函数不能进行重载,C++函数可以重载 C++在C的基础上增添类,C是一个结构

大厂算法例题解之网易2018秋招笔试真题 (未完)

1、字符串碎片 【题目描述】一个由小写字母组成的字符串可以看成一些同一字母的最大碎片组成的。例如,“aaabbaaac” 是由下面碎片组成的:‘aaa’,‘bb’,‘c’。牛牛现在给定一个字符串,请你帮助计算这个字符串的所有碎片的 平均长度是多少。 输入描述: 输入包括一个字符串 s,字符串 s 的长度 length(1 ≤ length ≤ 50),s 只含小写字母(‘a’-‘z’) 输出描述

AMEsim和Simulink联合仿真生成新的.mexw64液压模型文件

AMEsim和Simulink进行联合仿真非常重要的就是AMEsim经过第四阶段Simulation会在相同文件下面生成一个与AMEsim液压模型相同名字的.mexw64文件,在Simulink进行联合仿真的S-Function需要找的也就是这个文件,只不过输入的时候除了液压模型名字之外,后面有一个短下划线。 简而言之: AMEsim和Simulink联合仿真, 首先是需要AMEsim软

【自动驾驶】控制算法(八)横向控制Ⅱ | Carsim 与 Matlab 联合仿真基本操作

写在前面: 🌟 欢迎光临 清流君 的博客小天地,这里是我分享技术与心得的温馨角落。📝 个人主页:清流君_CSDN博客,期待与您一同探索 移动机器人 领域的无限可能。 🔍 本文系 清流君 原创之作,荣幸在CSDN首发🐒 若您觉得内容有价值,还请评论告知一声,以便更多人受益。 转载请注明出处,尊重原创,从我做起。 👍 点赞、评论、收藏,三连走一波,让我们一起养成好习惯😜 在这里,您将

Matlab/Simulink和AMEsim联合仿真(以PSO-PID算法为例)

目录 安装软件和配置环境变量 Matlab/Simulink和AMEsim联合仿真详细流程 非常重要的一点 Simulink模型和AMEsim模型用S-Function建立连接 从AMEsim软件打开Matlab Matlab里的设置 Matlab的.m文件修改(对于PSO-PID算法) 运行程序 我印象中好像做过Matlab/Simulink和AMEsim联合仿真的分享似的

CPC23第三场、第四场总结

这两天跟着Arthur学长们混了两天现场赛,有种打怪升级的感觉,就是90级的老大们带30级的我去打100级的BOSS,看着Arthur他们在不断的输出,我在一旁水经验·······不过我也没闲着玩泥巴,在status里留下了一大片WA、TLE、RE··········         CPC23第三场,开场19分钟,Arthur全场一A了C题,于是我就开始跟着切C题。看了一眼题目

vulhub GhostScript 沙箱绕过(CVE-2018-16509)

1.执行以下命令启动靶场环境并在浏览器访问 cd vulhub/ghostscript/CVE-2018-16509 #进入漏洞环境所在目录   docker-compose up -d #启动靶场   docker ps #查看容器信息 2.访问网页 3.下载包含payload的png文件 vulhub/ghostscript/CVE-2018-16509/poc.png at