首页 > 其他分享 >蓝桥杯-航班时间(简单写法+sscanf的应用)

蓝桥杯-航班时间(简单写法+sscanf的应用)

时间:2024-05-15 19:08:36浏览次数:18  
标签:sscanf h2 s1 h1 蓝桥 m1 m2 时间 写法

小 h 前往美国参加了蓝桥杯国际赛。

小 h 的女朋友发现小 h 上午十点出发,上午十二点到达美国,于是感叹到“现在飞机飞得真快,两小时就能到美国了”。

小 h 对超音速飞行感到十分恐惧。

仔细观察后发现飞机的起降时间都是当地时间。

由于北京和美国东部有 12 小时时差,故飞机总共需要 14 小时的飞行时间。

不久后小 h 的女朋友去中东交换。

小 h 并不知道中东与北京的时差。

但是小 h 得到了女朋友来回航班的起降时间。

小 h 想知道女朋友的航班飞行时间是多少。

对于一个可能跨时区的航班,给定来回程的起降时间。

假设飞机来回飞行时间相同,求飞机的飞行时间。

输入格式

一个输入包含多组数据。

输入第一行为一个正整数 T,表示输入数据组数。

每组数据包含两行,第一行为去程的起降时间,第二行为回程的起降时间。

起降时间的格式如下:

h1:m1:s1 h2:m2:s2
h1:m1:s1 h3:m3:s3 (+1)
h1:m1:s1 h4:m4:s4 (+2)

第一种格式表示该航班在当地时间h1时m1分s1秒起飞,在当地时间当日h2时m2分s2秒降落。

第二种格式表示该航班在当地时间h1时m1分s1秒起飞,在当地时间次日h2时m2分s2秒降落。

第三种格式表示该航班在当地时间h1时m1分s1秒起飞,在当地时间第三日h2时m2分s2秒降落。

输出格式

对于每一组数据输出一行一个时间hh:mm:ss,表示飞行时间为hh小时mm分ss秒。

注意,当时间为一位数时,要补齐前导零,如三小时四分五秒应写为03:04:05。

数据范围

保证输入时间合法(0≤h≤23,0≤m,s≤59),飞行时间不超过24小时。

输入样例:

3
17:48:19 21:57:24
11:05:18 15:14:23
17:21:07 00:31:46 (+1)
23:02:41 16:13:20 (+1)
10:19:19 20:41:24
22:19:04 16:41:09 (+1)

输出样例:

04:09:05
12:10:39
14:22:05

题解:

  • 把读入的时间都转换成秒
  • 把往返两次 最终的秒数减去开始的秒数相加 再除2就是答案
  • 最后把飞行的秒数转换成小时、分钟、秒, 格式化输出

sscanf的介绍 (注意第一个参数是 C语言的字符串)
int sscanf (const char * s, const char * 格式, ...);

从字符串中读取格式化数据
从 s 读取数据并根据参数格式将它们存储到附加参数指定的位置,就像使用scanf一样,但sscanf是从s读取而不是标准输入 ( stdin )。

ac代码

标签:sscanf,h2,s1,h1,蓝桥,m1,m2,时间,写法
From: https://www.cnblogs.com/xxctx/p/18194539

相关文章

  • P8803 [蓝桥杯 2022 国 B] 费用报销
    P8803[蓝桥杯2022国B]费用报销一、问题简析本题是一道01背包。重点是\(K\)的限制,使我们在取\(a_i\)时,不能无所顾忌地套用模板\(dp_{i-1,j-a_i.worth}+a_i.worth\)。我们必须找到上一张合法的\(a_j\),即\(a_j\)与\(a_i\)之间的日期不小于\(K\)。通过以下步骤确......
  • 蓝桥杯-日期问题
    小明正在整理一批历史文献。这些历史文献中出现了很多日期。小明知道这些日期都在1960年1月1日至2059年12月31日。令小明头疼的是,这些日期采用的格式非常不统一,有采用年/月/日的,有采用月/日/年的,还有采用日/月/年的。更加麻烦的是,年份也都省略了前两位,使得文献上的一个日期,存在......
  • 蓝桥杯-移动距离(最简单的写法)
    X星球居民小区的楼房全是一样的,并且按矩阵样式排列。其楼房的编号为1,2,3…当排满一行时,从下一行相邻的楼往反方向排号。比如:当小区排号宽度为6时,开始情形如下:123456121110987131415.....我们的问题是:已知了两个楼号m和n,需要求出它们之间的最短移......
  • P9425 [蓝桥杯 2022 国 B] 2022
    一、题目描述将\(2022\)拆分成\(10\)个互不相同的正整数之和,有多少种方案?二、问题简析令\(dp[i][j]=\)\(i\)的\(j\)划分的方案数(满足互不相同的正整数)。有两种实现方式:\(dp[i][j]\)不含\(1\)在\(dp[i-j][j]\)的基础上,每个元素+1。有\(j\)个元素,每个元素+1,......
  • 第十二届蓝桥杯选拔赛 python
    第一题(难度系数2,18个计分点) 编程实现:输入一个正整数n,计算出n乘100的积。 输入描述:输入一个正整数n输出描述:输出n乘100的积 样例输入:2样例输出:200  第二题(难度系数3,20个计分点) 编程实现:给定一个正整数,判断这个正整......
  • P9425 [蓝桥杯 2023 国 B] AB 路线
    P9425[蓝桥杯2023国B]AB路线一、问题简析本题是一道\(BFS\)题。与普通的广搜题不同的是,本题中,格子可以多次访问。因此,vis数组不能只用二维,要进行升维。本题中,每个节点包含以下信息:structnode{pair<int,int>loc;//坐标charch;//......
  • 蓝桥杯-错误票据(两种写法stringstream和扣字符)
    某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。你的任务是通过编程,找出断号的ID和重号的ID。假设断号不可能......
  • 蓝桥杯-递增三元组(三种解法,二分, 双指针, 前缀和)
    给定三个整数数组A=[A1,A2,…AN],B=[B1,B2,…BN],C=[C1,C2,…CN],请你统计有多少个三元组(i,j,k)满足:1≤i,j,k≤NAi<Bj<Ck输入格式第一行包含一个整数N。第二行包含N个整数A1,A2,…AN。第三行包含N个整数B1,B2,…BN。第四行包含N个整数C1,C2,…CN。输出格......
  • 蓝桥杯大赛单片机比赛经验总结
    蓝桥杯大赛单片机比赛经验总结适当的延时很重要,可以解决一些不正常现象ds1302读取的时间是BCD码,操作时间时换成10进制操作例:(shi/16)*10+shi%16每次只接受和发送一个字符,字符用单引号‘’字符串用双引号“”if(SBUF==‘a’)而不是if(SBUF=="a")总中......
  • 蓝桥杯-波动数列
    观察这个数列:1302-11-2…这个数列中后一项总是比前一项增加2或者减少3,且每一项都为整数。栋栋对这种数列很好奇,他想知道长度为n和为s而且后一项总是比前一项增加a或者减少b的整数数列可能有多少种呢?输入格式共一行,包含四个整数n,s,a,b,含义如前面所述。输出......