zoukankan      html  css  js  c++  java
  • Codeforces Gym100971 K.Palindromization-回文串 (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题就是从字符串中删除一个字符,然后剩下的是回文串。

    我写的代码虽然长得好看,但是循环里面的比较条件容易想错,太智障了。。。

    一开始写的是计数比较,但是有的时候下标相同的也比较了,为了简单一些,直接看有没有条件不成立的,这样就少想好多东西(偷懒为主,嘻嘻嘻)。

    代码:

     1 #include<cstdio>
     2 #include<cstring>
     3 #include<iostream>
     4 #include<cmath>
     5 #include<algorithm>
     6 using namespace std;
     7 const int N=1e6+10;
     8 char a[N];
     9 int main(){
    10     while(~scanf("%s",a)){
    11         int len=strlen(a);
    12         int flag1=0,flag2=0;
    13         int num=0,num1=0,num2=0;
    14         for(int i=0;i<len/2;i++){
    15             if(a[i]==a[len-1-i])num++;
    16             else{
    17                 flag1=i;flag2=len-1-i;break;
    18             }
    19         }
    20         //cout<<flag1<<" "<<flag2<<endl;
    21         for(int i=flag1+1;i<=len/2;i++){
    22             if(a[i]!=a[len-1-i+1]){   //这个比较容易想错
    23                 num1++;
    24                 //cout<<a[i]<<" "<<a[len-1-i+1]<<endl;
    25             }
    26         }
    27         for(int i=flag1;i<len/2;i++){
    28             if(a[i]!=a[len-1-i-1]){   //同上,易错
    29                 num2++;
    30                 //cout<<a[i]<<" "<<a[len-1-i-1]<<endl;
    31             }
    32         }
    33         //cout<<num<<" "<<num1<<" "<<num2<<endl;
    34         if(num==len/2){
    35             printf("YES
    ");
    36             printf("%d
    ",len/2+1);
    37         }
    38         else if(num1==0){
    39             printf("YES
    ");
    40             printf("%d
    ",flag1+1);
    41         }
    42         else if(num2==0){
    43             printf("YES
    ");
    44             printf("%d
    ",flag2+1);
    45         }
    46         else printf("NO
    ");
    47     }
    48     return 0;
    49 }
  • 相关阅读:
    jQuery入门(8):工具
    jQuery入门(2):核心(核心函数,对象访问,多库共存)
    jQuery入门(6):Ajax
    jQuery入门(7):效果
    jQuery入门(4):CSS相关API
    threadwait/sleep
    【转】Query的extend扩展方法使用点滴
    jquery.query2.1.7.js 操作url
    zhuan
    通用分页存储过程 采用ROW_NUMBER(),支持2005及以后的版本
  • 原文地址:https://www.cnblogs.com/ZERO-/p/9703047.html
Copyright © 2011-2022 走看看