社区讨论

进食后人(92)

P3741小果的键盘参与者 4已保存回复 7

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
7 条
当前快照
1 份
快照标识符
@m6svgf15
此快照首次捕获于
2025/02/06 13:03
去年
此快照最后确认于
2025/11/04 09:54
4 个月前
查看原帖
这份代码(来自@BH9570):
CPP
#include<bits/stdc++.h>
using namespace std;
char s[105]; 
int main () {
	int n;
	cin >> n;
	for (int i = 0; i < n; i++) {
		cin >> s[i];
	}
	int cnt = 0;
	int change = 1;
	for (int i = 0; i < n; i++) {
		if (s[i] == 'V' && s[i+1] == 'K') {
			cnt++;
			i++;
			continue;
		}
		else {
			if (s[i] == s[i+1]) {
				cnt += change;
				change = 0;
			}
		}
	}
	cout << cnt << endl;
	return 0;
}
92pts; 这份一百:
CPP
#include<bits/stdc++.h>
using namespace std;
char s[105]; 
bool vis[103];
int main () {
	int n;
	cin >> n;
	int un=0;
	for (int i = 0; i < n; i++) {
		cin >> s[i];
		if(s>0&&s[i]=='K'&&s[i-1]=='V') 
		{
		    un++;
		    vis[i]=vis[i-1]=1;
		   }
	}
	int cnt = 0;
	//int change = 1;
	for (int i = 0; i < n-1; i++) {
			if (s[i] == s[i+1]&&!vis[i]&&!vis[i+1]) {
				cnt=1;
			}
	}
	cout << cnt+un << endl;
	return 0;
}
un 是不修改的 VK 个数,最后判断有没有相邻的相同字符时要特别注意它们属不属于某一个“VK”。
比如 VKK,答案是 1,但上面的的程序会输出 2,因为 KK 的第一个 K 属于前面的 VK。
92 分是没有做到判断。

回复

7 条回复,欢迎继续交流。

正在加载回复...