洛谷刷题:小玉家的电费、小玉在游泳、小鱼的航程(改进版)、小鱼的游泳时间、小鱼会有危险吗

记录洛谷刷题QAQ


一、小玉家的电费

题目描述

夏天到了,各家各户的用电量都增加了许多,相应的电费也交的更多了。小玉家今天收到了一份电费通知单。小玉看到上面写:据闽价电 [2006]27 号规定,月用电量在 150 150 150 千瓦时及以下部分按每千瓦时 0.4463 0.4463 0.4463 元执行,月用电量在 151 ∼ 400 151\sim 400 151400 千瓦时的部分按每千瓦时 0.4663 0.4663 0.4663 元执行,月用电量在 401 401 401 千瓦时及以上部分按每千瓦时 0.5663 0.5663 0.5663 元执行;小玉想自己验证一下,电费通知单上应交电费的数目到底是否正确呢。请编写一个程序,已知用电总计,根据电价规定,计算出应交的电费应该是多少。

输入格式

输入一个正整数,表示用电总计(单位以千瓦时计),不超过 10000 10000 10000

输出格式

输出一个数,保留到小数点后 1 1 1 位(单位以元计,保留到小数点后 1 1 1 位)。

样例 #1

样例输入 #1

267

样例输出 #1

121.5

代码如下

#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[]) {
	int num;
	float sum;
	while(scanf("%d",&num)!=EOF){
		if(num>=0&&num<=150){
			sum = num*0.4463;
		}
		else if(num>150&&num<400){
			sum = (num - 150)*0.4663+66.945;
		}
		else if(num>=400){
			sum = (num - 400)*0.5663+66.945+116.575;
		}
		printf("%.1f",sum);
	} 
	return 0;
}

二、小玉在游泳

题目描述

小玉开心的在游泳,可是她很快难过的发现,自己的力气不够,游泳好累哦。已知小玉第一步能游 2 2 2 米,可是随着越来越累,力气越来越小,她接下来的每一步都只能游出上一步距离的 98 % 98\% 98%。现在小玉想知道,如果要游到距离 x x x 米的地方,她需要游多少步呢。请你编程解决这个问题。

输入格式

输入一个实数 s s s(单位:米),表示要游的目标距离。

输出格式

输出一个整数,表示小玉一共需要游多少步。

样例 #1

样例输入 #1

4.3

样例输出 #1

3

提示

数据保证, 0 ≤ s ≤ 100 0 \leq s \leq 100 0s100,且 s s s 小数点后最多只有一位。

代码如下


#include<stdio.h>
int main()
{
    float a,b=2,k=2;/*距离可能非整*/
    int i=1;/*由于数据弱就int即可*/
    scanf("%f",&a);/*输入目标*/
    for(i=1;i<=99999999;i++)
    {if(k>a) break;/*判断是否游到目标*/
     else 
     {
          b=b*0.98;/*每步能游的距离*/
          k=b+k;/*每步结束后的已游总距离*/
      }}
     printf("%d",i);/*输出步数*/
     return 0;
}

三、小鱼的航程(改进版)

题目背景

题目描述

有一只小鱼,它平日每天游泳 250 250 250 公里,周末休息(实行双休日),假设从周 x x x 开始算起,过了 n n n 天以后,小鱼一共累计游泳了多少公里呢?

输入格式

输入两个正整数 x , n x,n x,n,表示从周 x x x 算起,经过 n n n 天。

输出格式

输出一个整数,表示小鱼累计游泳了多少公里。

样例 #1

样例输入 #1

3 10

样例输出 #1

2000

提示

数据保证, 1 ≤ x ≤ 7 1\le x \le 7 1x7 1 ≤ n ≤ 1 0 6 1 \le n\le 10^6 1n106

代码如下

#include <stdio.h>
 
int main()
{
	int i, x, n; 
	long long sum = 0;
	while(scanf("%d%d", &x, &n)!=EOF){
		for (i=x; i<x+n; i++){
			if(i%7==0 || (i+1)%7==0)
				continue;
			else sum += 250;
		}
		
		printf("%lld", sum);
	}
	return 0;
}

四、小鱼的游泳时间

题目描述

伦敦奥运会要到了,小鱼在拼命练习游泳准备参加游泳比赛,可怜的小鱼并不知道鱼类是不能参加人类的奥运会的。

这一天,小鱼给自己的游泳时间做了精确的计时(本题中的计时都按 24 24 24 小时制计算),它发现自己从 a a a b b b 分一直游泳到当天的 c c c d d d 分,请你帮小鱼计算一下,它这天一共游了多少时间呢?

小鱼游的好辛苦呀,你可不要算错了哦。

输入格式

一行内输入 4 4 4 个整数,以空格隔开,分别表示题目中的 a , b , c , d a, b, c, d a,b,c,d

输出格式

一行内输出 2 2 2 个整数 e e e f f f,用空格间隔,依次表示小鱼这天一共游了多少小时多少分钟。其中表示分钟的整数 f f f 应该小于 60 60 60

样例 #1

样例输入 #1

12 50 19 10

样例输出 #1

6 20

提示

对于全部测试数据, 0 ≤ a , c ≤ 24 0\le a,c \le 24 0a,c24 0 ≤ b , d ≤ 60 0\le b,d \le 60 0b,d60,且结束时间一定晚于开始时间。

代码如下

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
	int a, b, c, d;
	int n, m;
	while(scanf("%d%d%d%d",&a,&b,&c,&d)!=EOF){
		int time1 = a*60+b;
		int time2 = c*60+d;
		int time = time2 - time1;
		n = time/60;
		m = time%60;
		printf("%d %d",n,m);
	} 
	return 0;
}

五、小鱼会有危险吗

题目描述

有一次,小鱼要从 A 处沿直线往右边游,小鱼第一秒可以游 7 7 7 米,从第二秒开始每秒游的距离只有前一秒的 98 % 98\% 98%。有个极其邪恶的猎人在距离 A 处右边 s s s 米的地方,安装了一个隐蔽的探测器,探测器左右 x x x 米之内是探测范围。一旦小鱼进入探测器的范围,探测器就会在这一秒结束时把信号传递给那个猎人,猎人在一秒后就要对探测器范围内的水域进行抓捕,这时如果小鱼还在这范围内就危险了。也就是说小鱼一旦进入探测器范围,如果能在下 1 1 1 秒的时间内马上游出探测器的范围,还是安全的。现在给出 s s s x x x 的数据,请你判断小鱼会不会有危险?如果有危险输出 y,没有危险输出 n

输入格式

一行内输入两个实数,用空格分隔,表示 s s s x x x

输出格式

一行内输出’y’或者’n’表示小鱼是否会有危险。

样例 #1

样例输入 #1

14 1

样例输出 #1

n

提示

数据规模与约定

对于 100 % 100\% 100% 的数据,保证 1 ≤ s , x ≤ 100 1 \leq s,x\le100 1s,x100,小数点后最多有 6 6 6 位小数。

代码如下

#include <stdio.h>
#include <stdlib.h>


int main(int argc, char *argv[]) {
	float step = 0;
	float len = 7.0;
	int distence, scale;
	scanf("%d%d",&distence,&scale);
	while(step < distence - scale){
		step = len + step;
		len = len * 0.98;
		}
		if(step + len <= distence + scale){
			printf("y");
		}
		else if(step + len > distence + scale){
			printf("n");
		} 
	return 0;
}
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值