AtCoder Beginner Contest 001

Submission #2089064

Source codeソースコード

#include <iostream>
#include <string>
#include <algorithm>
#include <utility>
using namespace std;

int N;
pair<int, int> t[30010];

int main(){
	cin >> N;
	for(int i=0; i<N; i++){
		string S; cin >> S;
		t[i].first = stoi(S);
		t[i].second = stoi(S.substr(5));
		
		//丸め
		if(0 <= t[i].first % 10 && t[i].first % 10 <5) {
			t[i].first = t[i].first / 10 * 10;
		} else {
			t[i].first = t[i].first / 10 * 10 + 5;
		}
		
		if(0 < t[i].second % 10 && t[i].second % 10 <= 5) {
			t[i].second = t[i].second / 10 * 10 + 5;
		} else if(t[i].second % 10 != 0){
			t[i].second = t[i].second / 10 * 10 + 10;
		}
		if(t[i].second % 100 == 60) t[i].second = t[i].second / 100 * 100 + 100;
		//cout << t[0].first << " " << t[0].second;
	}
	
	sort(t, t + N);
	

	
	//つながるかの判定
	for(int i=0; i<N-1; i++){
		if(t[i].second >= t[i+1].first){
			t[i+1] = make_pair(t[i].first, max(t[i].second,t[i+1].second));
			t[i] = make_pair(10000, 10000);
		}
	}
	
	sort(t, t+N);
	
	//for(int i=0; i<N; i++) cout << t[i].first << " " << t[i].second << endl;
	//cout << endl;
	
	int i=0;
	while(t[i].first != 10000 && i < N){
		int dig1 = 0, dig2 = 0, a = t[i].first, b = t[i].second;
		while(a > 0) {a /= 10; dig1++;} 
		while(b > 0) {b /= 10; dig2++;}
		if(t[i].first == 0) dig1 = 1;
		if(t[i].second == 0) dig2 = 1;
		
		for(int j = 0; j<4-dig1; j++) cout << "0"; 
		cout << t[i].first << "-";
		for(int j=0; j<4-dig2; j++) cout << "0"; 
		cout << t[i].second << endl;
		i++;
	}
}


Submission

Task問題 D - 感雨時刻の整理
User nameユーザ名 saku2pf
Created time投稿日時
Language言語 C++14 (GCC 5.4.1)
Status状態 AC
Score得点 100
Source lengthソースコード長 1543 Byte
File nameファイル名
Exec time実行時間 30 ms
Memory usageメモリ使用量 512 KB

Test case

Set

Set name Score得点 / Max score Cases
all 100 / 100 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

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
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 27 ms 512 KB
chokudai_ga_cho.txt AC 29 ms 512 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 29 ms 512 KB
test_22.txt AC 30 ms 512 KB
test_23.txt AC 29 ms 512 KB
test_24.txt AC 28 ms 512 KB
test_25.txt AC 29 ms 512 KB
test_26.txt AC 28 ms 512 KB
test_27.txt AC 29 ms 512 KB
test_28.txt AC 30 ms 512 KB
test_29.txt AC 1 ms 256 KB
test_30.txt AC 1 ms 256 KB
test_31.txt AC 5 ms 256 KB
test_32.txt AC 1 ms 256 KB
test_33.txt AC 19 ms 384 KB
test_34.txt AC 1 ms 256 KB
test_35.txt AC 1 ms 256 KB
test_36.txt AC 29 ms 512 KB
test_37.txt AC 28 ms 512 KB
test_38.txt AC 28 ms 512 KB
test_39.txt AC 29 ms 512 KB
test_40.txt AC 28 ms 512 KB
test_41.txt AC 27 ms 512 KB
test_42.txt AC 28 ms 512 KB
test_43.txt AC 26 ms 512 KB