1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 新・Bランクレベルアップメニュー(言語選択)
  4. 問題一覧 Haskell(Beta)編
  5. 【シミュレーション 4】位置情報システム

新・Bランクレベルアップメニューのサムネイル
【シミュレーション 4】位置情報システム (paizaランク B 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

paiza 君は次のような仕組みの位置情報システムを作成することにしました。


  1. 時刻 t_1(=0), t_2, ... , t_n(=100) のユーザーの位置情報 (y,x) を取得する。

  2. 各時刻 T = 0, 1, ..., 100 のユーザーの座標(位置情報)を次の方法で計算する。



    1. T = t_1, T = t_2, ..., T = t_n のいずれかに当たる場合

      時刻 T における座標(1. で取得した位置情報)を時刻 T における座標 (y,x) とする。


    2. t_i < T < t_{i+1} (1 ≦ i < n) の場合

      t_i 時点での座標 (y_1, x_1) から t_{i+1} 時点での座標 (y_2, x_1) へ等速で直線移動すると仮定して時刻 T における座標を計算によって求める。ただし、座標が小数になる場合は小数点以下を切り捨てるか切り上げる。





n 回の位置情報取得によって得られた座標が与えられるので、時刻 0, 1, ..., 100 の各時刻における座標を出力してください。

入力される値

n
t_1 y_1 x_1
...
t_n y_n x_n


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

y_0 x_0
y_1 x_1
...
y_100 x_100

条件

・2 ≦ n ≦ 101
・t_i < t_{i+1} (1 ≦ i < n)
・-10000000000 ≦ y_i ≦ 10000000000 (1 ≦ i ≦ n)
・-10000000000 ≦ x_i ≦ 10000000000 (1 ≦ i ≦ n)
・t_1 = 0
・t_n = 100

入力例1

2
0 0 0
100 100 100

出力例1

0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19
20 20
21 21
22 22
23 23
24 24
25 25
26 26
27 27
28 28
29 29
30 30
31 31
32 32
33 33
34 34
35 35
36 36
37 37
38 38
39 39
40 40
41 41
42 42
43 43
44 44
45 45
46 46
47 47
48 48
49 49
50 50
51 51
52 52
53 53
54 54
55 55
56 56
57 57
58 58
59 59
60 60
61 61
62 62
63 63
64 64
65 65
66 66
67 67
68 68
69 69
70 70
71 71
72 72
73 73
74 74
75 75
76 76
77 77
78 78
79 79
80 80
81 81
82 82
83 83
84 84
85 85
86 86
87 87
88 88
89 89
90 90
91 91
92 92
93 93
94 94
95 95
96 96
97 97
98 98
99 99
100 100

入力例2

3
0 0 0
50 -100 -100
100 100 100

出力例2

0 0
-2 -2
-4 -4
-6 -6
-8 -8
-10 -10
-12 -12
-14 -14
-16 -16
-18 -18
-20 -20
-22 -22
-24 -24
-26 -26
-28 -28
-30 -30
-32 -32
-34 -34
-36 -36
-38 -38
-40 -40
-42 -42
-44 -44
-46 -46
-48 -48
-50 -50
-52 -52
-54 -54
-56 -56
-58 -58
-60 -60
-62 -62
-64 -64
-66 -66
-68 -68
-70 -70
-72 -72
-74 -74
-76 -76
-78 -78
-80 -80
-82 -82
-84 -84
-86 -86
-88 -88
-90 -90
-92 -92
-94 -94
-96 -96
-98 -98
-100 -100
-96 -96
-92 -92
-88 -88
-84 -84
-80 -80
-76 -76
-72 -72
-68 -68
-64 -64
-60 -60
-56 -56
-52 -52
-48 -48
-44 -44
-40 -40
-36 -36
-32 -32
-28 -28
-24 -24
-20 -20
-16 -16
-12 -12
-8 -8
-4 -4
0 0
4 4
8 8
12 12
16 16
20 20
24 24
28 28
32 32
36 36
40 40
44 44
48 48
52 52
56 56
60 60
64 64
68 68
72 72
76 76
80 80
84 84
88 88
92 92
96 96
100 100

問題一覧へ戻る

ページの先頭へ戻る