小鹏的镜子

题目描述
小鹏有一面镜子,可以把接触的东西变成原来的两倍。但是因为是镜子嘛,只能对称变换。假如有一个为BA的珍珠项链,字母不一样代表的颜色不一样。现在小鹏用镜子将项链复制之后,项链变成了BAAB。如果再复制一遍的话,项链就会变成BAABBAAB。因为小鹏比较贪心,一直复制,最后竟然忘记原来的项链是什么样的了,接下来就请聪明的acmer编写程序,算出最开始项链的长度吧。

输入描述
第一行N表示接下来有N(N<=10)个串;之后的N行,每行是一个不超过100个大写英文字母组成的串。

输出描述
输出N行,每行是项链的初始长度

样例输入
2
ABBAABBA
AAAA

样例输出
2
1

示例代码:

#include
using namespace std;
int main(){
  int N;//N个串
  int flag;
  int str_down;
  string str;
  cin>>N;
  while(N--){
    cin>>str;
    str_down=str.length()-1;
    flag=1;
    while(flag){//检查项链的初始长度
      if((str_down+1)%2==1)//长度为单数,肯定不满足对称变换
        break;
      for(int j=0,k=str_down;j

你可能感兴趣的:(程序设计大赛)