ABC001 D 感雨時刻の整理
https://beta.atcoder.jp/contests/abc001/tasks/abc001_4
経緯
以下のコードを提出しました。
ローカルでサンプルデータを用いて走らせたときには正しい結果を出力していますが、提出するとサンプルデータにおいてもREになってしまっています。
これは出力の形式の問題ではと思い、最後に改行出力を足してみたりしましたが、それが問題ではなかったようです。
いったい何が引っ掛かっているのでしょうか?
先ほどAtcoderを始めたばかりなので、もしものすごい初歩的なミスでしたらお目汚しご容赦ください。
提出した回答
python3
1N = int(input()) 2memos = [list(map(int, input().split('-'))) for _ in range(N)] 3 4for memo in memos: 5 start = memo[0] 6 end = memo[1] 7 if start % 5 != 0: 8 min = start % 100 9 hour = start - min 10 11 while min % 5 != 0: 12 min -= 1 13 14 memo[0] = hour + min 15 16 if end % 5 != 0: 17 min = end % 100 18 hour = end - min 19 20 while min % 5 != 0: 21 min += 1 22 23 memo[1] = hour + min 24 25memos.sort(key=lambda memo:(memo[0], memo[1])) 26 27arranged_memos = [] 28rain_span = memos[0] 29for memo in memos: 30 if memo[0] > rain_span[1]: 31 arranged_memos.append(rain_span) 32 rain_span = memo 33 else: 34 if rain_span[1] < memo[1]: 35 rain_span[1] = memo[1] 36arranged_memos.append(rain_span) 37 38for memo in arranged_memos: 39 if memo[0] < 10: 40 start = f"000{memo[0]}" 41 elif memo[0] < 100: 42 start = f"00{memo[0]}" 43 elif memo[0] < 1000: 44 start = f"0{memo[0]}" 45 else: 46 start = f"{memo[0]}" 47 48 if memo[1] < 10: 49 end = f"000{memo[1]}" 50 elif memo[1] < 100: 51 end = f"00{memo[1]}" 52 elif memo[1] < 1000: 53 end = f"0{memo[1]}" 54 else: 55 end = f"{memo[1]}" 56 57 print(f"{start}-{end}") 58 59print("\n")
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。