法官姓名-UVA在线法官
问题名称-汉堡时间?
问题ID-11661
链接-https://onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=2708
我已经尝试解决该问题,并通过了问题pdf和uDebug中提供的所有测试用例。仍然在我提交解决方案时,我得到了错误的答案判决。请向我提供解决方法。提前谢谢。
#include <iostream>
using namespace std;
int main() {
long n;
while(1) {
cin >> n;
if(n == 0) exit(0);
char ch;
long countr = 0;
cin >> ch;
char start = ch;
long ans = 1000000000;
for(long i = 1; i < n; i++) {
cin >> ch;
countr++;
if(ch == 'Z') {
ans = 0;
} else if(start == 'R' && ch == 'D') {
if(countr < ans) {
ans = countr;
}
} else if(start == 'D' && ch == 'R') {
if(countr < ans) {
ans = countr;
}
}
if(ch == 'R') {
start = ch;
countr = 0;
}
if(ch == 'D') {
start = ch;
countr = 0;
}
}
cout << ans << endl;
}
cout << endl;
return 0;
}
答案 0 :(得分:0)
3
此代码失败。在获取第一个字符之后,将ch =='Z'ans = 0的条件放在开头。