主页 > 游戏开发  > 

AtCoderBeginnerContest001(A-積雪深差、B-視程の通報、C-風力観測、D-感雨時刻の整

AtCoderBeginnerContest001(A-積雪深差、B-視程の通報、C-風力観測、D-感雨時刻の整

由于我发现网上很少有人会发很久之前AtCoder Beginner Contes的题,所以我打算从AtCoder Beginner Contest 001开始写。大约两周一更,需要的可以订阅专栏,感谢支持Thanks♪(・ω・)ノ →题目讲解


A - 積雪深差

给定时间的积雪深度 H1和几小时前的积雪深度 H 2。计算并输出这 1 小时的雪深差值 H 1 H_1 H1​ − - − H 2 H_2 H2​。 输入由标准输入法提供,格式如下 H 1 H_1 H1​ H 2 H_2 H2​

第 1 1 1行,一个整数,给定时间的积雪深度 H 1 H_1 H1​(0≦ H 1 H_1 H1​≦2,000)。在第 2 2 2行输入一个整数,给出 1 1 1小时前的积雪深度 H 2 H_2 H2​(0≦ H 2 H_2 H2​≦2,000)。

以 1 1 1 行输出雪深差值 H 1 H_1 H1​ − - − H 2 H_2 H2​ 。 同时,在输出结果末尾加入换行符。


B - 視程の通報

天气信息以各种形式向全世界发布。其中一种是地面天气报告公式(SYNOP),它根据以下规则将目视距离(肉眼能清楚看到物体的最大距离)转换成一个称为 VV 的值(报告公式)。

小于 0.1 k m 0.1{\rm km} 0.1km :VV 值为 00 00 00 。大于 0.1 k m 0.1{\rm km} 0.1km 且小于 5 k m 5{\rm km} 5km :VV 的值应为 ( k m ) ({\rm km}) (km) 乘以 10 10 10 的距离。对于 1 1 1 位数,较高值应为 0 0 0 。 例如,如果 2 , 000 m 2,000{\rm m} 2,000m = 2.0 k m =2.0{\rm km} =2.0km ,则 VV 为 20 20 20 。同样,如果是 200 m 200{\rm m} 200m ,则 VV 为 02 02 02 。 对于 6 k m 6{\rm km} 6km 和 30 k m 30{\rm km} 30km 之间的距离:距离 ( k m ) ({\rm km}) (km) 加上 50 50 50 。 例如,如果 15 , 000 m 15,000{\rm m} 15,000m = 15 k m =15{\rm km} =15km ,VV 为 65 65 65 。 对于 35 k m 35{\rm km} 35km 和 70 k m 70{\rm km} 70km 之间的距离:从 ( k m ) ({\rm km}) (km) 减去 30 30 30 ,再除以 5 5 5 ,然后加上 80 80 80 。 例如,如果 40 , 000 m 40,000{\rm m} 40,000m = 40 k m =40{\rm km} =40km ,那么 VV 就是 82 82 82 。 大于 70 k m 70{\rm km} 70km :VV 的值为 89 89 89 。

现在给定了以米为单位的视距,请编写一个程序,输出根据上述规则计算出的 VV 值。

请注意,VV 始终是 2 2 2 位数的整数(包括较高的 0 0 0 ),没有任何输入值在按照上述规则计算时不是整数,或者不在上述范围内(例如大于 5 k m 5{\rm km} 5km 且小于 6 k m 6{\rm km} 6km )。 输入由标准输入提供,格式如下 m m m

行 1 1 1 给出了一个代表距离的整数 m ( 0 ≦ m ≦ 100 , 000 ) m\\ (0≦m≦100,000) m(0≦m≦100,000) 。单位为米 ( m ) ({\rm m}) (m) 。

以 1 1 1 行输出 VV 的值。同时,在输出结束时换行。


C - 風力観測

有些风速计每 1 分钟自动记录一次风的角度和范围。

风向角被定义为 0 度的真北,风从这里按顺时针方向吹来。在气象和其他观测中,使用 16 方向,将整个区域平均分为 16 个区域。 16 方位角和角度与下表相对应。

风向与风角的关系

方位角度方位角度N (北)其他的都不是S (南)大于168.75度 小于191.25度NNE(东北偏北)大于11.25度 小于33.75度S (西南偏南)大于191.25度 小于213.75度NE (东北)大于33.75度 小于56.25度SSW(西南)大于213.75度 小于236.25度ENE(东北偏东)大于56.25度 小于78.75度WSW (西南偏西)大于236.25度 小于258.75度E (东)大于78.75度 小于101.25度W (西)大于258.75度 小于281.25度ESE(东南偏东)大于101.25度 小于123.75度WNW (西北偏西)大于281.25度 小于303.75度SE (东南)大于123.75度 小于146.25度NW (西北)大于303.75度 小于326.25度SSE (东南偏南)大于146.25度 小于168.75度NNW (西北偏北)大于326.25度 小于348.75度

风程是指风速计的风轮在一定时间内被风吹动转动的幅度,用距离表示。 例如, 1 分钟内的风速为300m ,这意味着风轮在1 分钟内被风吹转了300m 。这1 分钟内的平均风速用 300m 除以60 秒得出5m/s 。

给出的数据将被修正为类似于收音机等播放的 "天气报告 "的格式。 天气报告给出了 16 的风向和风力(蒲福风级)。

上表中的风向位于 16 处。 然而,在风力为 0 的情况下,风向实际上是 “C”,这是一个特殊的方向,而不是 16 ,因为它被报告为 “弱风”。

风速经计算后,四舍五入到小数点后 2 位,并根据以下对应关系转换为风力。

风力与风速的关系(蒲福风力等级)

风力风速风力风速风力风速00.0m/s 或以上 ,0.2m/s 或以下58.0m/s 或以上,10.7m/s 或以下1024.5m/s 或以上,28.4m/s 或以下10.3m/s 或更多,1.5m/s 或更少610.8m/s 或更多,13.8m/s 或更少1128.5m/s 或更多,32.6m/s 或更少21.6m/s 及以上,3.3m/s 及以下713.9m/s 及以上,17.1m/s 及以下1232.7m/s 或以上33.4m/s 或以上,5.4m/s 或以下817.2m/s 及以上,20.7m/s 及以下45.5m/s 或以上,7.9m/s 或以下920.8m/s 及以上,24.4m/s 及以下

输入风向(角度)和 1 分钟风力范围,编写一个程序,以天气报告的形式输出

输入内容包括以下格式的 1 1 1 行。

D e g Deg Deg D i s Dis Dis

D e g Deg Deg 表示风向,是 10 10 10 乘以原始角度的整数(例如, 90 90 90 度表示为 900 900 900 , 137.5 137.5 137.5 度表示为 1375 1375 1375 )。 D i s Dis Dis 是一个整数,代表 1 1 1 分钟的风速范围。单位为米 ( m ) ({\rm m}) (m) 。 0 ≦ D e g < 3 , 600 0≦Deg<3,600 0≦Deg<3,600 0 ≦ D < 12 , 000 0≦D<12,000 0≦D<12,000

输出应为以下格式的 1 1 1 行。

D i r Dir Dir W W W

D i r Dir Dir 表示风向,是由 1 1 1 至 3 3 3 个字符组成的字符串,包括 “C”、“N”、“E”、"W "和 “S”。 W W W 表示风力,是介于 0 0 0 和 12 12 12 之间的整数。

输出也应以换行结束。


D - 感雨時刻の整理 题目:

降雨发生时刻这一信息与降水量一样重要。现在,找到了一份关于某一天降雨时刻的记录,因此想对这些记录进行整理,查明当天的降雨时刻。

整理将按照以下规则进行:

根据降雨时刻的记录,按时间顺序列出当天的降雨时段。跨越日期的降雨,将以 00:00 开始或 24:00 结束来处理,不会输入跨日期的记录。降雨开始和结束时间分别四舍五入到前后最近的 5 分钟整点。例如,13:23 开始降雨,14:01 结束降雨的情况,将视为从 13:20 到 14:05 期间在下雨。在四舍五入后的结果中,如果多条记录中的降雨时段有重叠部分,则将其视为一段连续的降雨。例如,有以下三条记录:11:06 开始降雨,11:23 结束;11:29 开始降雨,12:03 结束;11:48 开始降雨,12:10 结束。这三条记录的时间有重叠部分,经过合并后可视为 11:05 至 12:10 期间在下雨,即将其视为一段连续的降雨。 输出:

当输入记录内容时,请编写一个程序,按照上述规则整理并输出降雨时段 。

输入由标准输入提供,格式如下 N N N S 1 S_1 S1​ - E 1 E_1 E1​ S 2 S_2 S2​ - E 2 E_2 E2​ : S N S_N SN​ - E N E_N EN​

第1行输入一个整数 𝑁(1 ≤ 𝑁 ≤ 30,000),表示连续下雨的时刻数。第2行到第 𝑁+1 行,共 𝑁 行,每行给出一段降雨的开始时刻和结束时刻。 第 𝑖 行(1 ≤ 𝑖 ≤ 𝑁)中,雨水开始降落的时间为 𝑆𝑖,结束降落的时间为 𝐸𝑖,两者用连字符(-)分隔。关于时刻 𝑆𝑖 和 𝐸𝑖 的说明: 时刻为4位非负整数,格式为“hhmm”。前两位表示小时(hour),后两位表示分钟(minute)。时刻范围为 0000 到 2400,但分钟部分不会超过 59。保证 𝑆𝑖 早于 𝐸𝑖。 输出:

整理降雨时间,按降雨开始的最早时间顺序输出降雨开始和结束的时间,中间用连字符隔开。 在此过程中,输出 1 1 1 行连续的 1 1 1 雨量,并使用与输入相同的时间格式。 此外,应在输出结束时插入换行符。


以上↑翻译由DeepSeek、Deepl与人工翻译,可能会有瑕疵,求谅解。

标签:

AtCoderBeginnerContest001(A-積雪深差、B-視程の通報、C-風力観測、D-感雨時刻の整由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“AtCoderBeginnerContest001(A-積雪深差、B-視程の通報、C-風力観測、D-感雨時刻の整