CodeForces Round 300 我是煞笔!
代码。。能力。。为何。。这么。。弱。。
英语。。为何。。这么。。渣。。
前期打的非常顺,在1个小时的时候甚至到了200+名,然而。。我为何这么弱
我看错了题意,然而却A掉了,一个串只能切一次,后来Hack+4也是靠的这个
1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 using namespace std; 5 char s[1005],t[1005],y[1005]; 6 int main() 7 { 8 int i,len,tmp,j,k,x; 9 scanf("%s",s); 10 strcpy(t,"CODEFORCES"); 11 if (strcmp(s,t)==0){printf("YES\n"); return 0; } 12 len=strlen(s); 13 for (i=0;i<len;i++) 14 for (j=i;j<len;j++) 15 { 16 x=-1; 17 for (k=0;k<len;k++) 18 if (k<i||k>j) y[++x]=s[k]; 19 y[x+1]='\0'; 20 if (strcmp(y,t)==0){printf("YES\n"); return 0; } 21 } 22 printf("NO\n"); 23 return 0; 24 }
很快想到是能拿1则拿1,最多其实就是n里面最大的值
1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 using namespace std; 5 int a[115]; 6 int main() 7 { 8 int n,i,maxx,cnt,j; 9 scanf("%d",&n); 10 cnt=maxx=0; 11 while (n){ 12 a[++cnt]=n%10; 13 maxx=max(maxx,n%10); 14 n/=10; 15 } 16 printf("%d\n",maxx); 17 for (i=1;i<=maxx;i++){ 18 while (a[cnt]==0) cnt--; 19 for (j=cnt;j>=1;j--){ 20 if (a[j]>0){ printf("1"); a[j]--; } 21 else printf("0"); 22 } 23 printf(" "); 24 } 25 }
和CF之前一场题目类似,本来想计算的,看到10^8,果断无压力跑100+ms
1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 using namespace std; 5 struct dian{ 6 int id,h; 7 }a[100005]; 8 int cmp(dian n1,dian n2) 9 { 10 return n1.id<n2.id; 11 } 12 int main() 13 { 14 int n,m,i,maxx,mid,j; 15 scanf("%d%d",&n,&m); 16 for (i=1;i<=m;i++) 17 scanf("%d%d",&a[i].id,&a[i].h); 18 maxx=0; 19 sort(a+1,a+m+1,cmp); 20 maxx=max(maxx,a[1].id-1+a[1].h); 21 maxx=max(maxx,n-a[m].id+a[m].h); 22 for (i=1;i<m;i++) 23 { 24 mid=(a[i+1].id+a[i].id)/2; 25 if ((a[i].h+(a[i+1].id-a[i].id)<a[i+1].h)|| 26 (a[i+1].h+(a[i+1].id-a[i].id)<a[i].h)) { 27 printf("IMPOSSIBLE\n"); 28 return 0; 29 } 30 for (j=a[i].id;j<=a[i+1].id;j++) 31 maxx=max(maxx,min(a[i].h+(j-a[i].id), 32 a[i+1].h+(a[i+1].id-j))); 33 } 34 printf("%d\n",maxx); 35 }
打完ABC还剩一个多小时。。
D看题意看了半个小时。。
想到以大图点都符合来跑,将不符合的去掉,再看看是否覆盖完了,然而==
然而,手速慢的跟狗一样,在59s的时候交了一发,wa1.。
YES没有输出=====
不过还好,赛后重交了还有RE,数组开小了===
1 #include<stdio.h> 2 #include<string.h> 3 #include<algorithm> 4 using namespace std; 5 struct dian{ 6 int x,y; 7 }a[11005],b[11005],c[11005]; 8 int vis[10005],mp[105][105]; 9 char s[105][105]; 10 int main() 11 { 12 int i,j,c1,c2,c3,n,tx,ty; 13 scanf("%d",&n); 14 for (i=0;i<n;i++) 15 scanf("%s",s[i]); 16 c1=c2=c3=0; 17 for (i=0;i<n;i++) 18 for (j=0;j<n;j++) 19 if (s[i][j]=='o'){ 20 b[++c2].x=i; 21 b[c2].y=j; 22 } 23 for (i=1;i<2*n;i++) 24 for (j=1;j<2*n;j++){ 25 c[++c3].x=i; 26 c[c3].y=j; 27 } 28 memset(vis,0,sizeof(vis)); 29 for (i=1;i<=c2;i++) 30 { 31 for (j=1;j<=c3;j++) 32 { 33 tx=b[i].x-(n-c[j].x); 34 ty=b[i].y-(n-c[j].y); 35 if (tx<0||tx>=n||ty<0||ty>=n) continue; 36 if (s[tx][ty]!='.') continue; 37 vis[j]=1; 38 } 39 } 40 memset(mp,0,sizeof(mp)); 41 for (i=1;i<=c2;i++) 42 { 43 for (j=1;j<=c3;j++) 44 { 45 tx=b[i].x-(n-c[j].x); 46 ty=b[i].y-(n-c[j].y); 47 if (tx<0||tx>=n||ty<0||ty>=n) continue; 48 if (vis[j]==1) continue; 49 mp[tx][ty]=1; 50 } 51 } 52 for (i=0;i<n;i++) 53 for (j=0;j<n;j++) 54 if (s[i][j]=='x'&&mp[i][j]==0) {printf("NO\n"); 55 return 0; } 56 printf("YES\n"); 57 memset(mp,0,sizeof(mp)); 58 for (i=1;i<=c3;i++) 59 if (vis[i]==0) mp[c[i].x][c[i].y]=1; 60 for (i=1;i<2*n;i++){ 61 for (j=1;j<2*n;j++) 62 if (i==n&&j==n) printf("o"); 63 else if (mp[i][j]==1) printf("x"); 64 else printf("."); 65 printf("\n"); 66 } 67 return 0; 68 }
艹,又降了!!!!