Submission #2304307


Source Code Expand

#include <vector>
#include <algorithm>
#define REP(i, n) for(int i = 0; i < (int)(n); ++i)
using namespace std;


int replace(int N, char S[]) {
	vector<int> vs[4];
	REP(i, 4)vs[i].resize(100000);
	int len[4] = { 0,0,0,0 };
	REP(i, N) {
		if (S[i] == 'I') vs[0][len[0]++] = i;
		if (S[i] == 'J') vs[1][len[1]++] = i;
		if (S[i] == 'P') vs[2][len[2]++] = i;
		if (S[i] == 'C') vs[3][len[3]++] = i;
	}
	REP(i, 4)vs[i].resize(len[i]);

	int res = 4;
	REP(pat, 1 << 4) {
		int next = 0;
		int cur = 0;
		bool ok = true;
		REP(i, 4) {
			if (pat & (1 << i)) {
				vector<int>::iterator p = lower_bound(vs[i].begin(), vs[i].end(), next);
				if (p == vs[i].end()) {
					ok = false;
					break;
				}
				else {
					next = *p + 1;
				}
			}
			else {
				if (next < N) {
					++cur;
					++next;
				}
				else {
					ok = false;
					break;
				}
			}
		}
		if (ok) {
			res = min(res, cur);
		}
	}

	return res;
}

Submission Info

Submission Time
Task B - 合成数を倒せ (Prime Hazard)
User luogu_bot2
Language C++ (GCC 5.4.1)
Score 0
Code Size 964 Byte
Status CE

Compile Error

/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 0 has invalid symbol index 11
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 1 has invalid symbol index 12
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 2 has invalid symbol index 2
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 3 has invalid symbol index 2
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 4 has invalid symbol index 11
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 5 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 6 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 7 has invalid symbol index 13
/usr/bin/ld: /usr/lib/debug/usr/lib/x86_64-linux-gnu/crt1.o(.debug_info): relocation 8 has invalid symbol ...