洛谷刷题C语言:【Mc生存】经验值、开灯、乘积最大3、三角函数、电梯里的爱情
记录洛谷刷题QAQ
一、【Mc生存】经验值
题目背景
初一福利第2弹。。。
题目描述
话说 clearman 在 MC 世界开了个祥艺奶牛场,用熔浆、TNT 等丧心病狂的折磨牛,获取牛肉、牛奶等刷经验。他想知道他到底达到什么层次。
他总共进行了 n n n 项操作,每次操作要付出 x x x 生命值(初始生命是 10 10 10 点,初一党都知道!并且要先计算付出的生命值,如果小于等于 0 0 0,则死亡,本次即以下操作都无效。但切记:付出生命值可以是负数,也就是说可以回复 − x -x −x 点生命值,但上限只能是 10 10 10!切记!),每次操作可以获得 a a a 经验值(不能为负),他最后能达到 m m m 级 t t t 经验。
P.S. 关于等级
初始等级为 0 0 0。每加 2 m 2^m 2m( m m m 为当前等级)点经验可升一级。
1、假设 clearman 一共得到 15 15 15 点经验,那么他应该为 4 4 4 级( 15 − 1 − 2 − 4 − 8 = 0 15-1-2-4-8=0 15−1−2−4−8=0)加 0 0 0 点经验。
2、假设 clearman 一共获得 39 39 39 点经验,那么他应该为 5 5 5 级( 39 − 1 − 2 − 4 − 8 − 16 = 8 39-1-2-4-8-16=8 39−1−2−4−8−16=8)加 8 8 8 点经验。
输入格式
第一行一个正整数 n n n,表示操作个数。
接下来 n n n 行,每行两个数,为 clearman 的一次操作。
输出格式
一行,为等级和经验值。
样例 #1
样例输入 #1
2
5.5 15
4.5 24
样例输出 #1
4 0
提示
数据很弱,人肉输的,但是很坑。。。
【数据范围】
对于 100 % 100\% 100% 的数据, 1 ≤ n ≤ 20 1\le n \le 20 1≤n≤20。
代码如下:
#include <stdio.h>int main(void)
{int n; //n项操作double HP = 10; //总生命值,初始化为10,上限是10int LV = 0; //等级,初始化为1int EXP = 0; //总经验值,初始化为0double de_HP; //减少的生命值int in_EXP; //增加的经验值int EXP_per_LV = 1; //每次升级所需要的经验值scanf("%d", &n);for (int i = 0; i < n; i++){scanf("%lf %d", &de_HP, &in_EXP);//若死亡,跳出循环if (HP - de_HP <= 0){break;}HP -= de_HP;EXP += in_EXP;//上限是10if (HP > 10){HP = 10;}}while (EXP >= EXP_per_LV){EXP -= EXP_per_LV;LV++;EXP_per_LV *= 2;}printf("%d %d\n", LV, EXP);return 0;
}
二、开灯
题目背景
该题的题目是不是感到很眼熟呢?
事实上,如果你懂的方法,该题的代码简直不能再短。
但是如果你不懂得呢?那。。。(自己去想)
题目描述
首先所有的灯都是关的(注意是关!),编号为 1 1 1 的人走过来,把是 1 1 1 的倍数的灯全部打开,编号为 2 2 2 的人把是 2 2 2 的倍数的灯全部关上,编号为 3 3 3 的人又把是 3 3 3 的倍数的灯开的关上,关的开起来……直到第 N N N 个人为止。
给定 N N N,求 N N N 轮之后,还有哪几盏是开着的。
输入格式
一个数 N N N,表示灯的个数和操作的轮数。
输出格式
若干数,表示开着的电灯编号。
样例 #1
样例输入 #1
5
样例输出 #1
1 4
提示
【数据范围】
对于 100 % 100 \% 100% 的数据, 1 ≤ N ≤ 2 40 1 \le N \le 2^{40} 1≤N≤240。
【其他说明】
数学题!
代码如下:
#include<string.h>
#include<stdio.h>
#include<math.h>
#include <stdlib.h>int main(){int n;scanf("%d",&n);for(int i = 1;i <= sqrt(n);i++){printf("%d ",i*i);}return 0;
}
三、乘积最大3
题目描述
请你找出 M M M 个和为 N N N 的正整数,他们的乘积要尽可能的大。
输出字典序最小的一种方案。
输入格式
一行,两个正整数 N , M N,M N,M
输出格式
M M M 个和为 N N N 的,乘积尽可能的大的正整数。
样例 #1
样例输入 #1
6 3
样例输出 #1
2 2 2
提示
对于100%的数据, 1 ≤ N ≤ 1 0 9 , 1 ≤ M ≤ 1 0 6 1 \le N \le 10^{9},1 \le M \le 10^{6} 1≤N≤109,1≤M≤106。数据保证 N ≥ M N \geq M N≥M。
代码如下:
#include<string.h>
#include<stdio.h>
#include<math.h>
#include <stdlib.h>int main(){int n, m;//m个和为n的,乘积尽可能大的正整数scanf("%d %d",&m,&n);for(int i = 1;i <= n-(m%n);i++){printf("%d ",m/n); }for(int i = 1;i <= m%n;i++){printf("%d ",m/n+1);}return 0;
}
四、三角函数
题目描述
输入一组勾股数 a , b , c ( a ≠ b ≠ c ) a,b,c(a\neq b\neq c) a,b,c(a=b=c),用分数格式输出其较小锐角的正弦值。(要求约分。)
输入格式
一行,包含三个正整数,即勾股数 a , b , c a,b,c a,b,c(无大小顺序)。
输出格式
一行,包含一个分数,即较小锐角的正弦值
样例 #1
样例输入 #1
3 5 4
样例输出 #1
3/5
提示
数据保证: a , b , c a,b,c a,b,c 为正整数且 ∈ [ 1 , 1 0 9 ] \in [1,10^9] ∈[1,109]。
代码如下:
#include<string.h>
#include<stdio.h>
#include<math.h>
#include <stdlib.h>long long gcd(long long x, long long y) //辗转相除
{ long long z = y;while(x%y!=0){z = x%y;x = y;y = z; }return z; //返回最小公因数
}
int main(){long long a, b, c;scanf("%lld%lld%lld",&a,&b,&c);//找到最小值和最大值long long max, min;if(a>b&&a>c) max = a;if(b>c&&b>a) max = b;if(c>a&&c>b) max = c;if(c<a&c<b) min = c;if(b<a&&b<c) min = b;if(a<b&&a<c) min = a;// long long num = gcd(min,max);printf("%lld/%lld",min/gcd(min,max),max/gcd(min,max)); return 0;
}
五、电梯里的爱情
题目背景
木有……
题目描述
细心的同事发现,小 W 最近喜欢乘电梯上上下下,究其原因,也许只有小W自己知道:在电梯里经常可以遇到他心中的女神 PR。
电梯其实是个很暧昧的地方,只有在电梯里,小 W 才有勇气如此近距离接近女神,虽然觉得有点不自在,但次数多了,女神也习惯了小 W 的存在,甚至熟悉到仿佛不说上句话自己也都觉得不合适了。可是,他们的谈话也仅仅限于今天天气不错啊或是你吃了吗之类的,往往在对方微笑点头后就再次陷入难堪的沉默之中。 于是,小 W 便在陪伴女神的同时,也关注着电梯中显示的楼层数字,并且他注意到电梯每向上运行一层需要 6 6 6 秒钟,向下运行一层需要 4 4 4 秒钟,每开门一次需要 5 5 5 秒(如果有人到达才开门),并且每下一个人需要加 1 1 1 秒。
特别指出,电梯最开始在 0 0 0 层,并且最后必须再回到 0 0 0 层才算一趟任务结束。假设在开始的时候已知电梯内的每个人要去的楼层,你能计算出完成本趟任务需要的总时间吗?
这是个很简单的问题,要知道,小 W 已经修炼到快速心算出结果的境界,现在你来编程试试吧!
输入格式
共 2 2 2 行
第 1 1 1 行,一个正整数 n n n,表示乘坐电梯的人数。
第 2 2 2 行, n n n 个正整数, a i a_{i} ai 表示第 i i i 个人要去的楼层。
输出格式
仅 1 1 1 行,一个正整数,表示完成这趟任务需要的时间。
样例 #1
样例输入 #1
4
2 4 3 2
样例输出 #1
59
提示
对于 60 % 60\% 60% 的数据 0 < n < 1 0 4 0<n<10^4 0<n<104
对于 100 % 100\% 100% 的数据 0 < n < 1 0 5 0<n<10^5 0<n<105, 0 < a i ≤ 2 × 1 0 7 0<a_{i}\leq 2\times 10^7 0<ai≤2×107。
代码如下:
#include<string.h>
#include<stdio.h>
#include<math.h>
#include <stdlib.h>int main(){ int n;//人数scanf("%d",&n);int num[n];for(int i = 0;i < n;i++){scanf("%d",&num[i]); } int max = 0;for(int i = 0;i < n;i++){if(num[i]>= max)max = num[i];}int N[max+1];for(int i = 0;i <= max;i++){N[i] = 0;}for(int i = 0;i < n;i++){N[num[i]]++;}long long time = 0;for(int i = 1;i <= max;i++){ if(N[i]!=0)time = time + N[i] + 5;}time = time + max*10;printf("%lld\n",time);return 0;
}
洛谷刷题C语言:【Mc生存】经验值、开灯、乘积最大3、三角函数、电梯里的爱情相关推荐
- 洛谷刷题C语言:潇湘の雨、分糖果、Addition、Ljeto、TRI
记录洛谷刷题C语言QAQ 「PMOI-0」潇湘の雨 题目背景 (原 LZOI-1,改名已经 PMOI 成员同意) lhm-01 题目描述 言琢დ 在一个 2n×2n2n \times 2n2n×2n ...
- 洛谷刷题C语言:Bold、饱食、公平の意、DOM、
记录洛谷刷题C语言qaq [COCI2020-2021#6] Bold 题目描述 Paula 给 Daniel 写了一封信,她需要加粗文本的字体,以便视力恶化的 Daniel 阅读. 信可以用 . 和 ...
- 洛谷刷题C语言:陶瓷项链、Cow Gymnastics B、Where Am I? B、Hello, 2020!、SIR 模型
记录洛谷刷题C语言 一.[NOI2000] 瓷片项链 题目描述 原始部落用一种稀有的泥土烧制直径相同的圆瓷片并串成项链,串的时候沿瓷片的直径方向顺次连接,瓷片之间没有空隙也不重叠,一条项链至少由一个瓷 ...
- 洛谷刷题C语言:切蛋糕、概率、Bridž、NOTE、DOMINO
记录洛谷刷题C语言qaq [NOI Online 2021 入门组] 切蛋糕 题目描述 Alice.Bob 和 Cindy 三个好朋友得到了一个圆形蛋糕,他们打算分享这个蛋糕. 三个人的需求量分别为 ...
- 洛谷刷题C语言:Physics Problem、PARKING、Trol、信息学竞赛、POT
记录洛谷刷题C语言 「dWoi R1」Physics Problem 题目背景 面对白板上的物理题,王马陷入了沉思 -- 题目描述 有 nnn 个状态,编号为 111 到 nnn.这 nnn 个状态之 ...
- 洛谷刷题C语言:Fergusonball Ratings、Don‘t Mozheng. /oh、gcd.、幻想乡扑克游戏、PMTD
记录洛谷刷题C语言qaq [CCC2022 J2] Fergusonball Ratings 题目描述 现在有一个球队需要你评价. 球队中的第 i i i 个人进了 a i a_i ai 个球,犯规 ...
- 洛谷刷题C语言:远古档案馆(Ancient Archive)、VOLIM、SAHOVNICA、Tuna、KRIŽALJKA
记录洛谷刷题C语言qaq,都是些不优雅的代码 远古档案馆(Ancient Archive) 题目背景 为了揭开月光能量背后的秘密,你来到了地下的远古档案馆. 远古一族的秘密与遗忘的知识悉数贮藏于这片被 ...
- 洛谷刷题C语言:闰年判断、Apples、洛谷团队系统、肥胖问题、三位数排序
记录洛谷刷题QAQ 一.[深基3.例3]闰年判断 题目描述 输入一个年份,判断这一年是否是闰年,如果是输出 111,否则输出 000. 输入格式 输入一个正整数 nnn,表示年份. 输出格式 输出一行 ...
- 洛谷刷题C语言:数字反转、再分肥皂水、三角形面积、Apples Prologue/苹果和虫子、数的性质
记录洛谷刷题QAQ,一些不大优雅的代码 一.[深基2.例7]数字反转 题目描述 输入一个不小于 100100100 且小于 100010001000,同时包括小数点后一位的一个浮点数,例如 123.4 ...
最新文章
- 用python读取stata文件及写入and注意事项
- 计算机网络实验进入实时模式,计算机网络实验1 PacketTrace基本使用.doc
- 51nod-猴猴吃苹果【线段树】
- 图像处理中常见的时域与频域区别与关系
- 31岁博士副县长拟提任正处,3年前毕业被人才引进
- 写给小白的机器学习之数据表示与特征工程详解(附实战代码)
- [7.14更新日志]CRP编译缓存和海外构建让编译健步如飞!
- check mk mysql_Mysql管理必备工具Maatkit详解之四(mk-duplicate-key-checker)
- URAL - 1153 Supercomputer 大数开方
- 安徽大学计算机专硕奖学金,2019年安徽大学新闻传播跨考华东师范大学计算机专硕,总分418,排名第一经验分享!...
- matlab实现zca去白化,白化算法
- 机器学习小组知识点4:批量梯度下降法(BGD)
- 人工智能安全(五)—梯度攻击
- 【PTA乙级】【1096 大美数 (15 分)】
- Android系统电池管理(PowerManagerService)框架分析及其在实体设备和虚拟设备上的差异(一)
- VIBE运动检测算法实现(二)
- html渐变色css3渐变,css3渐变
- C语言 --- 动态内存管理(上)+优化版通讯录+笔试题
- P2P之关资金存管(二)模式
- 无人便利店代理的系统用于其他行业是否可以