Submission #2548233
Source Code Expand
#include<iostream>
#include<vector>
#include<queue>
#include<stack>
#include<string>
#include<cmath>
#include<algorithm>
#include<bitset>
#include<map>
#include<functional>
#include<set>
#pragma region
using namespace std;
#define FOR(i,r,n) for(ll i = (ll)(r); i < (ll)(n); i++)
#define RFOR(i,r,n) for(ll i=(ll)(n-1);i>=r;i--)
#define ALL(x) x.begin(),x.end()
#define RALL(x) x.rbegin(),x.rend()
#define LOWER(a,x) lower_bound(ALL(a), x) - a.begin() - 1;
#define COUNT(a,x) upper_bound(ALL(a), x) - lower_bound(ALL(a), x);
#define MCOUNT(a,x,y) upper_bound(ALL(a), y) - lower_bound(ALL(a), x);
#define scan(x) scanf("%lld",&x);
#define inf 5555555555555555555
#define mod 1000000007
#define pi 3.14159265358979323846
#define pb push_back
#define F first
#define S second
typedef long long int ll;
typedef long double ld;
typedef vector<ll> vll;
typedef pair<ll, ll> pll;
typedef vector<pll> vpll;
typedef map<ll, ll> MAP;
typedef set<ll> SET;
ll n = 0, m = 0, ans = 0, sum = 0, cnt = 0, tmp = 0, ma = 0, mi = 0;
string s;
bool flag, ok;
ll dx[4] = { 1,-1,0,0 }, dy[4] = { 0,0,1,-1 };
ll ddx[9] = { 1,-1,0,0,1,1,-1,-1,0 }, ddy[9] = { 0,0,1,-1,1,-1,1,-1,0 };
#pragma endregion
#define MAX 111111
bool rain[1555];
int main(void) {
ll st, en, now, x, y;
string s1, s2, zero;
cin >> n;
FOR(i, 0, n) {
cin >> s;
s1 = s.substr(0, 4);
s2 = s.substr(5, 4);
flag = false;
if (s1[3] == '1' || s1[3] == '2' || s1[3] == '3' || s1[3] == '4') s1[3] = '0';
if (s1[3] == '6' || s1[3] == '7' || s1[3] == '8' || s1[3] == '9') s1[3] = '5';
if (s2[3] == '1' || s2[3] == '2' || s2[3] == '3' || s2[3] == '4') s2[3] = '5';
if (s2[3] == '6' || s2[3] == '7' || s2[3] == '8' || s2[3] == '9') {
flag = true;
s2[3] = '0';
}
st = (s1[0] - '0') * 600 + (s1[1] - '0') * 60;
st += (s1[2] - '0') * 10 + (s1[3] - '0');
en = (s2[0] - '0') * 600 + (s2[1] - '0') * 60;
en += (s2[2] - '0') * 10 + (s2[3] - '0');
if (flag) en += 10;
FOR(j, st, en) {
rain[j] = true;
}
}
zero = "0";
now = 0;
while (now < 1440) {
FOR(i, now, 1441) {
if (rain[i]) {
now = i;
break;
}
}
if (now == en) break;
st = now;
while (rain[now]) {
now++;
}
en = now;
x = st / 60;
y = st % 60;
if (x < 10) cout << zero;
cout << x;
if (y < 10)cout << zero;
cout << y << "-";
x = en / 60;
y = en % 60;
if (x < 10) cout << zero;
cout << x;
if (y < 10)cout << zero;
cout << y << endl;
}
}
Submission Info
Submission Time |
|
Task |
D - 感雨時刻の整理 |
User |
hide1214 |
Language |
C++14 (GCC 5.4.1) |
Score |
100 |
Code Size |
2510 Byte |
Status |
AC |
Exec Time |
35 ms |
Memory |
256 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 |
1 ms |
256 KB |
00_sample_02.txt |
AC |
1 ms |
256 KB |
00_sample_03.txt |
AC |
1 ms |
256 KB |
cho_cho_chokudai.txt |
AC |
35 ms |
256 KB |
chokudai_ga_cho.txt |
AC |
25 ms |
256 KB |
test_01.txt |
AC |
2 ms |
256 KB |
test_02.txt |
AC |
2 ms |
256 KB |
test_03.txt |
AC |
2 ms |
256 KB |
test_04.txt |
AC |
2 ms |
256 KB |
test_05.txt |
AC |
2 ms |
256 KB |
test_06.txt |
AC |
1 ms |
256 KB |
test_07.txt |
AC |
1 ms |
256 KB |
test_08.txt |
AC |
1 ms |
256 KB |
test_09.txt |
AC |
2 ms |
256 KB |
test_10.txt |
AC |
2 ms |
256 KB |
test_11.txt |
AC |
2 ms |
256 KB |
test_12.txt |
AC |
2 ms |
256 KB |
test_13.txt |
AC |
1 ms |
256 KB |
test_14.txt |
AC |
2 ms |
256 KB |
test_15.txt |
AC |
2 ms |
256 KB |
test_16.txt |
AC |
1 ms |
256 KB |
test_17.txt |
AC |
2 ms |
256 KB |
test_18.txt |
AC |
1 ms |
256 KB |
test_19.txt |
AC |
2 ms |
256 KB |
test_20.txt |
AC |
2 ms |
256 KB |
test_21.txt |
AC |
21 ms |
256 KB |
test_22.txt |
AC |
23 ms |
256 KB |
test_23.txt |
AC |
21 ms |
256 KB |
test_24.txt |
AC |
22 ms |
256 KB |
test_25.txt |
AC |
22 ms |
256 KB |
test_26.txt |
AC |
20 ms |
256 KB |
test_27.txt |
AC |
20 ms |
256 KB |
test_28.txt |
AC |
20 ms |
256 KB |
test_29.txt |
AC |
1 ms |
256 KB |
test_30.txt |
AC |
1 ms |
256 KB |
test_31.txt |
AC |
4 ms |
256 KB |
test_32.txt |
AC |
1 ms |
256 KB |
test_33.txt |
AC |
13 ms |
256 KB |
test_34.txt |
AC |
1 ms |
256 KB |
test_35.txt |
AC |
1 ms |
256 KB |
test_36.txt |
AC |
24 ms |
256 KB |
test_37.txt |
AC |
20 ms |
256 KB |
test_38.txt |
AC |
20 ms |
256 KB |
test_39.txt |
AC |
21 ms |
256 KB |
test_40.txt |
AC |
20 ms |
256 KB |
test_41.txt |
AC |
27 ms |
256 KB |
test_42.txt |
AC |
27 ms |
256 KB |
test_43.txt |
AC |
27 ms |
256 KB |