社区讨论
75pts RE on #7,8,11,19,20 求救
P11361[NOIP2024] 编辑字符串参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @mid4h744
- 此快照首次捕获于
- 2025/11/24 20:27 3 个月前
- 此快照最后确认于
- 2025/11/24 21:01 3 个月前
本地测了 #7 是过了的,洛谷上就 RE 了,不知道为什么。
CPP#include<bits/stdc++.h>
using namespace std;
template <typename T> inline T in(){
T x=0,f=1;int c=getchar();
while(c<'0'||c>'9'){if(c=='-') f=-1;c=getchar();}
while(c>='0'&&c<='9') x=(x<<1)+(x<<3)+(c^48),c=getchar();
return x*f;
}
template <typename T> inline void out(T x){
if(x<0) putchar('-'),x=-x;
if(x<10) putchar(x^48);
else out<T>(x/10),putchar((x%10)^48);
}
int Tex=in<int>(),n,ans,num,NUM,con0[100005],con1[100005],CON0[100005],CON1[100005],g[100005],G[100005];
bool s[100005],S[100005],t[100005],T[100005];
int main(){
while(Tex--){
n=in<int>(),ans=t[0]=T[0]=0;
for(int i=1;i<=n;i++) s[i]=getchar()-48;getchar();
for(int i=1;i<=n;i++) S[i]=getchar()-48;getchar();
for(int i=1;i<=n;i++) t[i]=getchar()-48;getchar();
for(int i=1;i<=n;i++) T[i]=getchar()-48;getchar();
for(int i=1;i<=n;i++){
if(!(t[i]&&t[i-1])) num++;
if(!(T[i]&&T[i-1])) NUM++;
g[i]=num,G[i]=NUM;
if(s[i]) con1[num]++;
else con0[num]++;
if(S[i]) CON1[NUM]++;
else CON0[NUM]++;
}
for(int i=1;i<=n;i++)
if(con1[g[i]]&&CON1[G[i]]) ans++,con1[g[i]]--,CON1[G[i]]--;
else if(con0[g[i]]&&CON0[G[i]]) ans++,con0[g[i]]--,CON0[G[i]]--;
else if(con1[g[i]]) con1[g[i]]--,CON0[G[i]]--;
else con0[g[i]]--,CON1[G[i]]--;
out<int>(ans),putchar('\n');
}
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...