C++ 齿轮问题 - 优化齿轮方向 (静态数组)
#include
int main() { int n; char gears[50]; cin >> n; cin >> gears;
int min_deletions = n;
for (int i = 0; i < n; i++) {
char current_gear = gears[i];
int deletions = 0;
// 检查当前齿轮方向是否与其相邻齿轮方向相反
if (current_gear == 'L' && gears[(i-1+n)%n] != 'R') {
deletions++;
} else if (current_gear == 'R' && gears[(i-1+n)%n] != 'L') {
deletions++;
}
// 检查当前齿轮方向是否与其下一个齿轮方向相反
if (current_gear == 'L' && gears[(i+1)%n] != 'R') {
deletions++;
} else if (current_gear == 'R' && gears[(i+1)%n] != 'L') {
deletions++;
}
// 更新最小删除次数
min_deletions = min(min_deletions, deletions);
}
cout << min_deletions << endl;
return 0;
}
原文地址: https://www.cveoy.top/t/topic/qxer 著作权归作者所有。请勿转载和采集!