QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#575717#9288. Roman PalindromesCorzicaWA 1ms4004kbC++141.5kb2024-09-19 16:25:352024-09-19 16:25:36

Judging History

This is the latest submission verdict.

  • [2024-09-19 16:25:36]
  • Judged
  • Verdict: WA
  • Time: 1ms
  • Memory: 4004kb
  • [2024-09-19 16:25:35]
  • Submitted

answer

#include <bits/stdc++.h>
using namespace std;
int n;
char c[100005];
int f[100005];
const int inf = 0x3f3f3f3f;
signed main() {
	ios::sync_with_stdio(0);
	cin.tie(0);
	cout.tie(0);
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> c[i];
	}
	memset(f, 0x3f, sizeof(f));
	f[0] = 0;
	for (int i = 1; i <= n; i++) {
		f[i] = min(f[i - 1] + 1, f[i] );
		if (c[i] == 'M') {
			if (c[i + 1] == 'C' && c[i + 2] == 'M') {
				f[i + 2] = min(f[i + 2], f[i - 1] + 1);
			}
			if (c[i + 1] == 'M') {
				f[i + 1] = min(f[i + 1], f[i - 1] + 1);
				if (c[i + 2] == 'M') {
					f[i + 2] = min(f[i + 2], f[i - 1] + 1);
				}
			}
		} else if (c[i] == 'C') {
			if (c[i + 1] == 'X' && c[i + 2] == 'C') {
				f[i + 2] = min(f[i + 2], f[i - 1] + 1);
			}
			if (c[i + 1] == 'C') {
				f[i + 1] = min(f[i + 1], f[i - 1] + 1);
				if (c[i + 2] == 'C') {
					f[i + 2] = min(f[i + 2], f[i - 1] + 1);
				}
			}
		} else if (c[i] == 'D') {

		} else if (c[i] == 'X') {
			if (c[i + 1] == 'I' && c[i + 2] == 'X') {
				f[i + 2] = min(f[i + 2], f[i - 1] + 1);
			}
			if (c[i + 1] == 'X') {
				f[i + 1] = min(f[i + 1], f[i - 1] + 1);
				if (c[i + 2] == 'X') {
					f[i + 2] = min(f[i + 2], f[i - 1] + 1);
				}
			}
		} else if (c[i] == 'L') {

		} else if (c[i] == 'I') {
			if (c[i + 1] == 'I') {
				f[i + 1] = min(f[i + 1], f[i - 1] + 1);
				if (c[i + 2] == 'I') {
					f[i + 2] = min(f[i + 2], f[i - 1] + 1);
				}
			}
		} else {

		}
	}
	cout << f[n];
}

详细

Test #1:

score: 0
Wrong Answer
time: 1ms
memory: 4004kb

input:

5
MMXXI

output:

3

result:

wrong output format Unexpected end of file - token expected