CSES - Datatähti 2018 alku - Results
Submission details
Task:Merkkijono
Sender:Nipatiitti
Submission time:2017-10-03 16:24:06 +0300
Language:C++
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED100
Test results
testverdicttime
#1ACCEPTED0.05 sdetails
#2ACCEPTED0.05 sdetails
#3ACCEPTED0.04 sdetails
#4ACCEPTED0.05 sdetails
#5ACCEPTED0.04 sdetails
#6ACCEPTED0.06 sdetails
#7ACCEPTED0.05 sdetails
#8ACCEPTED0.05 sdetails
#9ACCEPTED0.04 sdetails
#10ACCEPTED0.03 sdetails

Compiler report

input/code.cpp: In function 'std::string c(std::vector<std::basic_string<char> >)':
input/code.cpp:55:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for (int j = 0; j < l.size(); j++) {
                              ^

Code

#include<iostream>
#include<string>
#include<vector>

using namespace std;

vector<string> b(string s) {
	int i = 0;
	int j = 1;
	vector<string> r;
	string k;
	int l = s.length();
	while (i < l) {
		k = s.at(i);
		while (i + j < l) {
			if (s.at(i + j) == k[0]) {
				k += k[0];
			}
			else {
				break;
			}
			j++;
		}
		r.push_back(k);
		i += j;
		j = 1;
	}

	return r;
}

string c(vector<string> l) {
	int k = l.size();

	bool r = false;

	for (int i = 0; i < k; i++) {
		if (l[i].length() > 1) {
			r = true;
			if (i + 1 < k && i - 1 >= 0 ) {
				if (l[i - 1][0] == l[i + 1][0]) {
					l[i - 1] += l[i + 1];
					l.erase(l.begin() + i - 1);
				}
			}
			l.erase(l.begin() + i);
			break;
		}
	}
	if (r) {
		return c(l);
	}
	else {
		string s = "";
		for (int j = 0; j < l.size(); j++) {
			s += l[j];
		}
		return s;
	}
}

int main(){
	string s;

	cin >> s;
	
	string a = c(b(s));

	cout << a << "\n";

	return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
ABABABABABABABABABABABABABABAB...

correct output
ABABABABABABABABABABABABABABAB...

user output
ABABABABABABABABABABABABABABAB...

Test 2

Verdict: ACCEPTED

input
AABBAABBAABBAABBAABBAABBAABBAA...

correct output
(empty)

user output
(empty)

Test 3

Verdict: ACCEPTED

input
ABABABABABABABABABABABABABABAB...

correct output
(empty)

user output
(empty)

Test 4

Verdict: ACCEPTED

input
BBABABBBBBAABBBABABABBBBAAABAB...

correct output
BAB

user output
BAB

Test 5

Verdict: ACCEPTED

input
ACDCBBACDBBBACAACBBDBADBAABABA...

correct output
ACDCACDADBADABACACDCADADABABCA...

user output
ACDCACDADBADABACACDCADADABABCA...

Test 6

Verdict: ACCEPTED

input
EETFHIJOGACDHMGVFJCMETMZDEITTR...

correct output
TFHIJOGACDHMGVFJCMETMZDEIROTET...

user output
TFHIJOGACDHMGVFJCMETMZDEIROTET...

Test 7

Verdict: ACCEPTED

input
GOONLAHLYPRFCZKIKSJWAWWYJJPCDB...

correct output
GNLAHLYPRFCZKIKSJWAYPCDNWYMRCE...

user output
GNLAHLYPRFCZKIKSJWAYPCDNWYMRCE...

Test 8

Verdict: ACCEPTED

input
PISHWMOTCDDZFRMYMOMYDYYGJZIQHS...

correct output
PISHWMOTCZFRMYMOMYDGJZIQHSVAOK...

user output
PISHWMOTCZFRMYMOMYDGJZIQHSVAOK...

Test 9

Verdict: ACCEPTED

input
QUVVTPXAMWWODFXRONJODPGBTCISGM...

correct output
QUTPXAMODFXRONJODPGBTCISGMVRBW...

user output
QUTPXAMODFXRONJODPGBTCISGMVRBW...

Test 10

Verdict: ACCEPTED

input
POXHAHYEZTLYNFSLABODMRNKDSKROZ...

correct output
POXHAHYEZTLYNFSLABODMRNKDSKROZ...

user output
POXHAHYEZTLYNFSLABODMRNKDSKROZ...