期望得分:100+100+100=300
实际得分:94+96+97=287
T1 #6090. 「Codeforces Round #418」尘封思绪
#include<cstdio> #define N 102 using namespace std; int a[N],b[N]; int main() { int n,m; scanf("%d%d",&n,&m); if(m>1) { printf("Yes"); return 0; } if(!m) { for(int i=1;i<=n;i++) if(a[i]<a[i-1]) { printf("Yes"); return 0; } printf("No"); return 0; } int pos; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); if(!a[i]) { pos=i; continue;} if(a[i]<a[i-1]) { printf("Yes"); return 0; } } scanf("%d",&m); a[n+1]=201; if(m<a[pos-1] || m>a[pos+1]) { printf("Yes"); return 0; } printf("No"); }
T1 #6091. 「Codeforces Round #418」幻想特快
#include<cstdio> #define N 1001 using namespace std; int a[N],b[N]; int p[3],fa,fb; int v[N]; int main() { int n; scanf("%d",&n); for(int i=1;i<=n;i++) { scanf("%d",&a[i]); if(!v[a[i]]) v[a[i]]=i; else fa=i; } for(int i=1;i<=n;i++) { scanf("%d",&b[i]); if(a[i]!=b[i]) p[++p[0]]=i; } int k; for(int i=1;i<=n;i++) if(!v[i]) { k=i; break; } if(p[0]==1) { a[p[1]]=k; for(int i=1;i<=n;i++) printf("%d ",a[i]); return 0; } if(b[fa]==k) a[fa]=k; else a[v[a[fa]]]=k; for(int i=1;i<=n;i++) printf("%d ",a[i]); }