acm hnu 10189 Speed Limit (easy)

本文介绍了一种计算基于时间记录和速度的总行驶距离的方法,并提供了一个简单的C语言程序示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Speed Limit
Time Limit: 1000ms, Special Time Limit:2500ms, Memory Limit:32768KB
Total submit users: 164, Accepted users: 162
Problem 10189 : No special judgement
Problem description
Bill and Ted are taking a road trip. But the odometer in their car is broken, so they don't know how many miles they have driven. Fortunately, Bill has a working stopwatch, so they can record their speed and the total time they have driven. Unfortunately, their record keeping strategy is a little odd, so they need help computing the total distance driven. You are to write a program to do this computation. For example, if their log shows Speed in miles perhour Total elapsed time in hours 20 2 30 6 10 7 this means they drove 2 hours at 20 miles per hour, then 6-2=4 hours at 30 miles per hour, then 7-6=1 hour at 10 miles per hour. The distance driven is then (2)(20) + (4)(30) + (1)(10) = 40 + 120 + 10 = 170 miles. Note that the total elapsed time is always since the beginning of the trip, not since the previous entry in their log.

Input
The input consists of one or more data sets. Each set starts with a line containing an integer n, 1 <= n <= 10, followed by n pairs of values, one pair per line. The first value in a pair, s, is the speed in miles per hour and the second value, t, is the total elapsed time. Both s and t are integers, 1 <= s <= 90 and 1 <= t <= 12. The values for t are always in strictly increasing order. A value of -1 for n signals the end of the input.

Output
For each input set, print the distance driven, followed by a space, followed by the word "miles"

Sample Input
3
20 2
30 6
10 7
2
60 1
30 5
4
15 1
25 2
30 3
10 5
-1
Sample Output
170 miles
180 miles
90 miles

Problem Source
Mid-Central USA 2004
 
/*10:40*/
#include 
<stdio.h>

main()
{
  
int i,j,k,n;
  
int v=0,t=0,vinput,telapse,miles;
  scanf(
"%d",&n);
  
while(n!=-1){
    v
=0;
    t
=0//pre speed time
    miles=0;
    
for(i=0;i<n;i++){
        scanf(
"%d%d",&vinput,&telapse);
        miles
+=(telapse-t)*vinput;
        t
=telapse;
    }  
    printf(
"%d miles ",miles);
               
    scanf(
"%d",&n);             
  }
  
return 0;
}
### HNU ACM 2024 Competition Information and Team Details HNU ACM团队积极参与各类编程竞赛活动,旨在提升成员算法设计与实现能力。对于即将举行的2024年比赛,参赛者需关注官方渠道发布的最新通知来获取确切的比赛时间表、规则变化以及报名方式等重要信息[^1]。 #### 团队构成 该队伍由来自不同年级的学生组成,他们拥有丰富的解题经验和扎实的理论基础,在历届赛事中取得了优异的成绩。新老队员之间相互学习交流,共同进步成长。此外,学校还邀请了多位经验丰富的指导教师参与培训工作,帮助学生更好地准备比赛。 #### 训练资源 为了提高选手们的实战水平,HNU ACM提供了多种训练途径: - **在线评测平台**:通过解决平台上提供的题目积累经验; - **内部讲座和技术分享会**:定期举办专题研讨会,深入探讨特定领域内的难题解决方案; - **模拟赛**:不定期组织校内选拔测试或与其他高校联合举行友谊对抗赛,增强团队协作精神的同时也锻炼心理素质。 #### 技术栈覆盖范围广泛 除了传统的数据结构和算法外,还包括但不限于以下方面: - 动态规划的应用实例解析,例如在处理分硬币问题时如何构建状态转移方程以求得最优解法。 - C/C++语言特性及其高效利用技巧,比如理解不同类型变量之间的转换机制,避免因误操作而导致不可预期的结果输出[^2]。 - 操作系统的底层原理探索,像掌握FIFO缓冲区的工作模式及相应寄存器的状态监测方法[^3]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值