Submission #353528
Source Code Expand
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; namespace ProgrammingContest_CSharp { class Program { struct Time { public int Hour { get; private set; } public int Minute { get; private set; } public int Tick { get { return Hour * 60 + Minute; } } public Time(int tick) : this(tick / 60, tick % 60) { } public Time(int hour, int minute) : this() { Hour = hour; Minute = minute; } public Time RoundDown() { Time time = this; time.Minute -= time.Minute % 5; return time; } public Time RoundUp() { Time time = this; time.Minute += (5 - time.Minute % 5) % 5; if (time.Minute >= 60) { time.Hour++; time.Minute -= 60; } return time; } public static bool operator ==(Time a, Time b) { return a.Hour == b.Hour && a.Minute == b.Minute; } public static bool operator !=(Time a, Time b) { return !(a == b); } public override string ToString() { return string.Format("{0:00}{1:00}", Hour, Minute); } } static void Main(string[] args) { int n = int.Parse(Console.ReadLine()); bool[] raining = new bool[24 * 60 + 2]; for (int i = 0; i < n; i++) { string s = Console.ReadLine(); var m = Regex.Match(s, "(\\d\\d)(\\d\\d)-(\\d\\d)(\\d\\d)"); Time start = new Time(int.Parse(m.Groups[1].Value), int.Parse(m.Groups[2].Value)).RoundDown(); Time end = new Time(int.Parse(m.Groups[3].Value), int.Parse(m.Groups[4].Value)).RoundUp(); for (int t = start.Tick; t <= end.Tick; t++) { raining[t] = true; } } List<string> ans = new List<string>(); for (int t = 0; t <= 24 * 60; t++) { if (raining[t]) { Time begin = new Time(t); while (raining[t]) { t++; } Time end = new Time(t - 1); ans.Add(begin + "-" + end); } } foreach (var item in ans) { Console.WriteLine(item); } } } }
Submission Info
Submission Time | |
---|---|
Task | D - 感雨時刻の整理 |
User | jxuaqxwd |
Language | C# (Mono 2.10.8.1) |
Score | 100 |
Code Size | 3011 Byte |
Status | AC |
Exec Time | 501 ms |
Memory | 10712 KB |
Judge Result
Set Name | all | ||
---|---|---|---|
Score / Max Score | 100 / 100 | ||
Status |
|
Set Name | Test Cases |
---|---|
all | 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, cho_cho_chokudai.txt, chokudai_ga_cho.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_01.txt | AC | 186 ms | 10648 KB |
00_sample_02.txt | AC | 180 ms | 10700 KB |
00_sample_03.txt | AC | 180 ms | 10612 KB |
cho_cho_chokudai.txt | AC | 501 ms | 10708 KB |
chokudai_ga_cho.txt | AC | 455 ms | 10580 KB |
test_01.txt | AC | 191 ms | 10696 KB |
test_02.txt | AC | 187 ms | 10712 KB |
test_03.txt | AC | 191 ms | 10704 KB |
test_04.txt | AC | 194 ms | 10632 KB |
test_05.txt | AC | 189 ms | 10684 KB |
test_06.txt | AC | 188 ms | 10708 KB |
test_07.txt | AC | 192 ms | 10708 KB |
test_08.txt | AC | 193 ms | 10708 KB |
test_09.txt | AC | 193 ms | 10648 KB |
test_10.txt | AC | 189 ms | 10648 KB |
test_11.txt | AC | 188 ms | 10644 KB |
test_12.txt | AC | 186 ms | 10708 KB |
test_13.txt | AC | 184 ms | 10708 KB |
test_14.txt | AC | 188 ms | 10712 KB |
test_15.txt | AC | 187 ms | 10708 KB |
test_16.txt | AC | 180 ms | 10708 KB |
test_17.txt | AC | 185 ms | 10608 KB |
test_18.txt | AC | 184 ms | 10708 KB |
test_19.txt | AC | 184 ms | 10708 KB |
test_20.txt | AC | 185 ms | 10612 KB |
test_21.txt | AC | 410 ms | 10584 KB |
test_22.txt | AC | 427 ms | 10596 KB |
test_23.txt | AC | 412 ms | 10680 KB |
test_24.txt | AC | 424 ms | 10704 KB |
test_25.txt | AC | 416 ms | 10712 KB |
test_26.txt | AC | 409 ms | 10712 KB |
test_27.txt | AC | 409 ms | 10704 KB |
test_28.txt | AC | 417 ms | 10708 KB |
test_29.txt | AC | 180 ms | 10704 KB |
test_30.txt | AC | 180 ms | 10704 KB |
test_31.txt | AC | 216 ms | 10708 KB |
test_32.txt | AC | 181 ms | 10592 KB |
test_33.txt | AC | 339 ms | 10712 KB |
test_34.txt | AC | 187 ms | 10712 KB |
test_35.txt | AC | 192 ms | 10704 KB |
test_36.txt | AC | 437 ms | 10584 KB |
test_37.txt | AC | 423 ms | 10584 KB |
test_38.txt | AC | 414 ms | 10708 KB |
test_39.txt | AC | 416 ms | 10712 KB |
test_40.txt | AC | 432 ms | 10708 KB |
test_41.txt | AC | 463 ms | 10712 KB |
test_42.txt | AC | 456 ms | 10712 KB |
test_43.txt | AC | 448 ms | 10656 KB |