- 1.比赛题目
- A 大家好
- 1.题目
- 2.分析
- 3.代码
- B 被鸽了的课本
- 1.题目
- 2.分析
- 3.代码
- C 学数列
- 1.题目
- 2.分析
- 3.代码
- D 回文数
- 1.题目
- 2.分析
- 3.代码
- E Drink
- 1.题目
- 2.分析
- 3.代码
- F 统计
- 1.题目
- 2.分析
- 3.代码
- G
- 1.题目
- 2.分析
- 3.代码
- H
- 1.题目
- 2.分析
- 3.代码
- 2.比赛总结
- 3.更新日志
题目描述
跨界大神 L. Peter Deutsch 有一句名言:“To iterate is human, to recurse divine.”(迭代的是人,递归的是神)。
本题就请你直接在屏幕上输出这句话。
输入描述:
本题没有输入。
输出描述:
2.分析在一行中输出 To iterate is human, to recurse divine.。
CTRL C/V
3.代码#include
using namespace std;
int main()
{
cout<<"To iterate is human, to recurse divine.";
return 0;
}
B 被鸽了的课本
1.题目
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
众所周知你在读高二,高二有必修课本和选修课本。
众所周知你的学校很坑,和商家串通好了来坑害你
众所周知你的学校不帮你买课本(啥玩意)
众所周知你想知道自己买划算还是让学校代购划算
学校刚开通了代购渠道,原价共x元的必修课本和y元的选修课本,如果选择让学校代购可以减免a%a%。
而如果后面自己买,因为选科的问题只需要y/2元。
你想知道是自己买划算还是学校代购划算。
还有,能自己买尽量自己买。
输入描述:
一行三个整数x,y,a
输出描述:
如果学校划算输出"Through school"
否则输出"By myself"
示例1
输入
5 5 1
输出
By myself
说明
自己买花7.5元
通过学校买花费9.9元
记得用double类型,防止a/100为0之类的小错误
3.代码#include
using namespace std;
int main()
{
double x,y,a;
double M,S;
cin>>x>>y>>a;
M=x+y/2;
S=(x+y)*(1-a/100);
if(M>S)
cout<<"Through school";
else
cout<<"By myself";
return 0;
}
C 学数列
1.题目
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
牛牛准备继续进阶,计算更难的数列
输入一个整数n,计算 1+1/(1-3)+1/(1-3+5)+…+1/(1-3+5-…((-1)^(n-1))*(2n-1))的值
输入描述:
输入一个整数
输出描述:
输出一个浮点数,保留3位小数
示例1
输入
1
输出
1.000
利用循环,依次更新即可
3.代码#include
#include
int main()
{
double n,Sum=1,Fm=1,Xiang=3,flag=1;
double i=3;
scanf("%lf",&n);
while(i<=(2*n-1))
{
flag*=-1;
Fm+=flag*Xiang;
Sum+=1/Fm;
Xiang+=2;
i+=2;
}
printf("%.3lf",Sum);
return 0;
}
D 回文数
1.题目
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 32768K,其他语言65536K
64bit IO Format: %lld
题目描述
今天牛牛学到了回文串,他想在数字里面找回文,即回文数,回文数是正着读与倒着读都一样的数,比如1221,343是回文数,433不是回文数。
请输出不超过n的回文数。
输入描述:
输入一个整数n(1 <= n <= 100000)
输出描述:
从1开始按从小到大的顺序输出所有回文数
示例1
输入
10
输出
1
2
3
4
5
6
7
8
9
回文数可以将整个数字逆序,比较逆序之后的数字和逆序前的数字是否相同
3.代码#include
int main()
{
int n,i=1;
int Sum=0;
scanf("%d",&n);
while(i<=n)
{
int temp=i;
Sum=0;
while(temp) //Sum为逆序后的数字
{
Sum=10*Sum+temp%10;
temp/=10;
}
if(Sum==i)
printf("%d\n",i);
i++;
}
return 0;
}
E Drink
1.题目
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld
题目描述
小美和小团最近沉迷可乐。
可供TA们选择的可乐共有k种,比如可口可乐、零度可乐等等,每种可乐会带给小美和小团不同的快乐程度。
TA们一共要买n瓶可乐,每种可乐可以买无限多瓶,小美会随机挑选其中的m瓶喝,剩下的n-m瓶小团喝。
请问应该如何购买可乐,使得小美和小团得到的快乐程度的和的期望值最大?
现在请求出购买可乐的方案。
示例1
输入
2 1 2
1 2
3 1
输出
0 2
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld
题目描述
某次科研调查时得到了n个自然数,每个数均不超过1500000000(1.5*109)。
已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。
输入描述:
第1行是整数n,表示自然数的个数。
第2~n+1行每行一个自然数。
输出描述:
输出m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。
每行输出两个整数,分别是自然数和该数出现的次数,其间用一个空格隔开。
示例1
输入
8
2
4
2
4
5
100
2
100
输出
2 3
4 2
5 1
100 2
先将输入的数字sort排序,再记录每个数字出现的次数,最终依次输出即可(可以边计算边输出!!!)
3.代码#include
using namespace std;
int main()
{
int Num[200005]; //存储输入的自然数
int n; //记录自然数的个数
int cnt,temp;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>Num[i]; //存储
}
sort(Num,Num+n);
for(int j=0;j<n;j++)
{
if(j==0)
{
temp=Num[j];
cnt=1;
}
else if(temp!=Num[j])
{
cout<<temp<<" "<<cnt<<endl;
temp=Num[j]; //重置temp
cnt=1; //重置cnt
}
else
cnt++;
}
cout<<temp<<" "<<cnt; //输出最后一次的数据
return 0;
}
G
1.题目
2.分析
3.代码
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 262144K,其他语言524288K
64bit IO Format: %lld
输入描述:
第一行是用一个空格隔开的两个正整数 n 和 m,n 表纸带上格子的个数, m 表纸带上颜色的种类数。
第二行有 n 用空格隔开的正整数,第 i 数字 number 表纸带上编号为 i 格子上面写的数字。
第三行有 n 用空格隔开的正整数,第 i 数字 color 表纸带上编号为 i 格子染的颜色。
输出描述:
共一行,一个整数,表示所求的纸带分数除以10,007所得的余数。
示例1
输入
6 2
5 5 3 2 2 2
2 2 1 1 2 1
输出
82
说明
纸带如题目描述中的图所示。
所有满足条件的三元组为:(1,3,5),(4,5,6)。
所以纸带的分数为(1+5)∗(5+2)+(4+6)∗(2+2)=42+40=82。
示例2
输入
15 4
5 10 8 2 2 2 9 9 7 7 5 6 4 2 4
2 2 3 3 4 3 3 2 4 4 4 4 1 1 1
输出
1388
备注:
对于第1组至第2组数据,1≤n≤100,1≤m≤5;
对于第3组至第4组数据,1≤n≤3000,1≤m≤100;
对于第5组至第6组数据,1≤n≤100000,1≤m≤100000,且不存在出现次数超过20的颜色;
对于全部10组数据,1≤n≤100000,1≤m≤100000,1≤colori≤m,1≤numberi≤100000。
时间限制:C/C++ 1秒,其他语言2秒
空间限制:C/C++ 131072K,其他语言262144K
64bit IO Format: %lld
题目描述
vigoss18在某997工作制的公司上班,终于有一天爆发了,决定要跑路。
既然要跑路了,当然得对自己的代码做点手脚,既要保证走了之后代码仍然可以运行,又要保证走了之后别人维护不了,所以决定写个程序,用来批量把代码中的注释全部删掉。
输入描述:
对于每个输入文件,处理到文件尾。
输入如题意描述,保证单个输入文件不超过5kb
输出描述:
2.分析 3.代码 2.比赛总结输出去掉注释以后的内容,除了注释以外的内容全部需要输出,卿不要漏掉换行空格之类的。
AC 4/8
比赛的时候急于敲代码,没有构思好算法、思路,导致中间换了很多种方法,有时最终依旧做不对,很可惜。
比赛结果虽然被淘汰了,但是毕竟自己 基础薄弱,掌握得不全面,继续努力吧!!
2022.4.5 整理 ( D G H) 先鸽了
欢迎交流、讨论、指正~
不理解、不正确之处,欢迎评论区留言~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)