B - 視程の通報 解説

実行時間制限: 2 sec / メモリ制限: 64 MB

注意

この問題は古い問題です。過去問練習をする場合は、新しいAtCoder Beginner Contestから取り組むことをお勧めしています。

問題文

気象情報は、世界中に様々な形で流れています。そのひとつの地上実況気象通報式 (SYNOP) では、視程 (肉眼で物体がはっきりと確認できる最大の距離) を、次の規則に従って、VVという値 (通報式) に変換して報じます。
  1. 0.1km0.1{\rm km} 未満: VVの値は 0000 とする。
  2. 0.1km0.1{\rm km} 以上 5km5{\rm km} 以下:距離 (km)({\rm km})1010 倍した値とする。11 桁の場合は上位に 00 を付す。
    • 例えば、2,000m2,000{\rm m} =2.0km=2.0{\rm km} ならば、VVは 2020 である。同じく、200m200{\rm m}の場合VVは 0202 である。
  3. 6km6{\rm km} 以上 30km30{\rm km} 以下:距離 (km)({\rm km})5050 を足した値とする。
    • 例えば、15,000m15,000{\rm m} =15km=15{\rm km} ならば、VVは 6565 である。
  4. 35km35{\rm km} 以上 70km70{\rm km} 以下:距離 (km)({\rm km}) から 3030 を引いて 55 で割った後、8080 を足した値とする。
    • 例えば、40,000m40,000{\rm m} =40km=40{\rm km} ならば、VVは 8282 である。
  5. 70km70{\rm km} より大きい:VVの値は 8989 とする。
いま、あなたに視程の距離をメートルで与えるので、上記のルールに従って計算されるVVを出力するプログラムを作成してください。

なお、VVは必ず(上位の 00 を含めて)22桁の整数であり、上記のルールに従って計算した時に整数にならないような入力や、上記の範囲に入らない入力 (例:5km5{\rm km} より大きく 6km6{\rm km} 未満) などはありません。

入力

入力は以下の形式で標準入力から与えられる。
mm
  1. 11 行目には、距離を表す整数 m (0m100,000)m\ (0≦m≦100,000) が与えられる。単位はメートル (m)({\rm m}) である。

出力

VVの値を 11 行で出力せよ。
また、出力の末尾には改行を入れること。

入力例 1

Copy
  1. 15000
15000

出力例 1

Copy
  1. 65
65
  • 入力は15,000m15,000{\rm m} =15km=15{\rm km} であり、6km6{\rm km} 以上 30km30{\rm km} 以下なので、「km{\rm km} での値に 5050 を足してVVとする。」というルールに従う。
  • そのため、15+50=6515+50=65が正解である。

入力例 2

Copy
  1. 75000
75000

出力例 2

Copy
  1. 89
89
  • 70km70{\rm km} より大きい場合は、VVは 8989 である。

入力例 3

Copy
  1. 200
200

出力例 3

Copy
  1. 02
02
  • VVは 22 桁でなければならない。


2025-03-14 (金)
13:11:18 +00:00