nyoj-204

时间:2023-02-26 07:27:47

描述国王有一个魔镜,可以把任何接触镜面的东西变成原来的两倍——只是,因为是镜子嘛,增加的那部分是反的。

比如一条项链,我们用AB来表示,不同的字母表示不同颜色的珍珠。如果把B端接触镜面的话,魔镜会把这条项链变为ABBA。如果再用一端接触的话,则会变成ABBAABBA(假定国王只用项链的某一端接触魔镜)。

给定最终的项链,请编写程序输出国王没使用魔镜之前,最初的项链可能的最小长度。

 
输入
第一行是一个整数N(N<=10)表示测试数据的组数) 每组测试数据占一行 只有一个字符串(长度小于100),由大写英文字母组成,表示最终的项链。
输出
每组测试数据的输出只有一个整数,表示国王没使用魔镜前,最初的项链可能的最小长度。
样例输入
2
ABBAABBA
A
样例输出
2
1
#if 0
//wa~
#include <stdio.h>
#include <string.h>
#define M 101
char s[M]; int main()
{
int t, n, i, j, sum, min;
scanf("%d", &t);
while(t--){ scanf("%s", s+);
n = strlen(s+);
min = ;
if(n == )
{
printf("1\n");
}
else
{
while(n){ for(sum = , i = , j = n; s[i] == s[j]; i++, j--)
{
if(i >= j)/*循环到对称中心的位置结束*/
{
break;
}
sum++;
}
if(sum != && sum < min)
{
min = sum;
}
n /= ; }
if(min == )
{
min = strlen(s+);
}
printf("%d\n", min); } }
return ;
}
#endif #if 0
//AC,最下面有个简化的
#include <stdio.h>
#include <string.h>
#define M 101
char s[M]; int main()
{
int t, n, i, j, flag;
scanf("%d", &t);
while(t--){ scanf("%s", s+);
n = strlen(s+);
flag = ;
while(n){ if(n == )
{
break;
}
if(n != && n% != )
{
break;
}
for(i = , j = n; i < j; i++, j--){ if(s[i] != s[j])
{
flag = ;
break;
} }
if(flag == )
{
break;
}
n /= ; }
printf("%d\n", n); }
return ;
}
#endif //我觉得上面的逻辑比较混乱,简化一下
#include <stdio.h>
#include <string.h>
#define M 102
char s[M]; int main()
{
int t, len, i, j, flag;
scanf("%d", &t);
while(t--){ scanf("%s", s+);
len = strlen(s+);
flag = ;/*代表找到基本字符串的标志*/
while(len % == ){ for(i = , j = len; i < j; i++, j--){ if(s[i] != s[j])
{
flag = ;
break;
} }
if(flag == )
{
break;
}
len /= ;/*折半查找*/ }
printf("%d\n", len); }
return ;
}

nyoj-204的更多相关文章

  1. NYOJ 1007

    在博客NYOJ 998 中已经写过计算欧拉函数的三种方法,这里不再赘述. 本题也是对欧拉函数的应用的考查,不过考查了另外一个数论基本定理:如何用欧拉函数求小于n且与n互质所有的正整数的和. 记eule ...

  2. NYOJ 998

    这道题是欧拉函数的使用,这里简要介绍下欧拉函数. 欧拉函数定义为:对于正整数n,欧拉函数是指不超过n且与n互质的正整数的个数. 欧拉函数的性质:1.设n = p1a1p2a2p3a3p4a4...pk ...

  3. PIC10F200&sol;202&sol;204&sol;206&sol;220&sol;222&sol;320&sol;322芯片解密程序复制多少钱?

    PIC10F200/202/204/206/220/222/320/322芯片解密程序复制多少钱? PIC10F单片机芯片解密型号: PIC10F200解密 | PIC10F202解密 | PIC10 ...

  4. PHP build notes - WARNING&colon; This bison version is not supported for regeneration of the Zend&sol;PHP parsers &lpar;found&colon; 3&period;0&comma; min&colon; 204&comma; excluded&colon; 3&period;0&rpar;&period;

     WARNING: This bison version is not supported for regeneration of the Zend/PHP parsers (found: 3.0, ...

  5. NYOJ 333

    http://www.cppblog.com/RyanWang/archive/2009/07/19/90512.aspx?opt=admin 欧拉函数 E(x)表示比x小的且与x互质的正整数的个数. ...

  6. ShareSDK 集成 Google&plus; 登录 400&period; Error&colon;redirect&lowbar;uri&lowbar;mismatch 和 Error Domain&equals;ShareSDKErrorDomain Code&equals;204

    最近在集成ShareSDK中 Google+ 登录授权时候 出现了如下几个问题 1.    400.  Error:redirect_uri_mismatch 出现这种情况, redirectUri应 ...

  7. NYOJ 99单词拼接(有向图的欧拉(回)路)

    /* NYOJ 99单词拼接: 思路:欧拉回路或者欧拉路的搜索! 注意:是有向图的!不要当成无向图,否则在在搜索之前的判断中因为判断有无导致不必要的搜索,以致TLE! 有向图的欧拉路:abs(In[i ...

  8. nyoj 10 skiing 搜索&plus;动归

    整整两天了,都打不开网页,是不是我提交的次数太多了? nyoj 10: #include<stdio.h> #include<string.h> ][],b[][]; int ...

  9. 简答哈希实现 (nyoj 138 找球号2)

    例题链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=138 代码目的:复习哈希用 代码实现: #include "stdio.h&qu ...

  10. nyoj 284 坦克大战 简单搜索

    题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=284 题意:在一个给定图中,铁墙,河流不可走,砖墙走的话,多花费时间1,问从起点到终点至少 ...

随机推荐

  1. Java内部类final语义实现

    本文描述在java内部类中,经常会引用外部类的变量信息.但是这些变量信息是如何传递给内部类的,在表面上并没有相应的线索.本文从字节码层描述在内部类中是如何实现这些语义的. 本地临时变量 基本类型 fi ...

  2. Android Touch事件传递机制 二:单纯的(伪生命周期)

    转载于:http://blog.csdn.net/yuanzeyao/article/details/38025165 在前一篇文章中,我主要讲解了Android源码中的Touch事件的传递过程,现在 ...

  3. 10、WGET

    这个我看过比较好的  http://www.cnblogs.com/peida/archive/2013/03/18/2965369.html WGET 支持HTTP和FTP协议,断点续传功能,自动递 ...

  4. 【SPOJ 1812】Longest Common Substring II

    http://www.spoj.com/problems/LCS2/ 这道题想了好久. 做法是对第一个串建后缀自动机,然后用后面的串去匹配它,并在走过的状态上记录走到这个状态时的最长距离.每匹配完一个 ...

  5. Intellij IDEA 14的注册机

    将以下代码保存成keygen.java import java.math.BigInteger; import java.util.Date; import java.util.Random; imp ...

  6. tcp&sol;ip程序

    #include<stdio.h> #include<stdlib.h> #include<errno.h> #include<string.h> #i ...

  7. Knockout&period;Js官网学习(监控属性Observables)

    前言 1.创建一个ViewModel <script type="text/javascript"> //1.创建一个ViewModel var myViewModel ...

  8. B - Kefa and Company

    B - Kefa and Company Time Limit:2000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I6 ...

  9. Firefox插件推荐

    介绍一下我常用的几个Firefox插件,不一定适合所有人. 图中所示4个插件是我仅有的4个addons,除了stylish,其他几个已经伴随我多年. 1.Adblock Plus(强烈推荐) 广告拦截 ...

  10. Java基础笔记10

    类的设计分析: 1.根据需求抽取属性.(名词几乎都是属性) 2.属性私有化(private) 3.生成setter和getter方法 4.可以根据需要添加构造函数. 5.根据需求抽取其他方法.(动词几 ...

相关文章