最小下标
小蓝有一个由大写字母ABCDEF组成的字符串S,长度为n,字符串的下标依次为0到n-1。
小蓝按照如下方法生成一个无限长的字符串:
首先选定一个0到n-1之间的数,作为初始下标。
从初始下标开始,将下标对应的字符加入到字符串的结尾,将字符的序号(A到F依次对应1到6)与下标相加作为新的下标值,如果下标大于等于n,将其对n求余。重复此过程,即得到无限长的字符串。例如,对于字符串ACDF,当初始下标是0时,生成的字符串为:ACACACACAC...
再如,对于字符串DCBA,当初始下标是1时,生成的字符串为:CDDDDDDDDD.…
给定小蓝的字符串S,请问当初始下标为多少时,生成的字符串最小。
输入格式
输入一行包含一个字符串。
输出格式
输出一行,包含一个整数,为所求的下标,如果有多个下标满足要求,输出最小的那个。
样例输入1
DCBA
样例输出1
3
样例输入2
AAAA
样例输出2
0
评测用例规模与约定
令|S|表示S的长度。
对于30%的评测用例,1<=|S|<=100。
对于50%的评测用例,1<=|S|<=1000。
对于70%的评测用例,1<=|S|<=10000。
对于80%的评测用例,1<=|S|<=100000。
对于所有评测用例,1<=|S|<=1000000。
相似题推荐
编程实现:
小蓝要使用相同大小的积木搭建楼梯,每层需要使用的积木块数量规律如下:
第一层需要使用1块积木;
第二层需要使用2块积木;
第三层需要使用3块积木;
依次类推;
第m层需要使用m块积木。
现在小蓝有n块积木,按照以上规律搭建楼梯,问一共可以搭建几层完整的楼梯。
如:n=7,第一层使用1块积木,第二层使用2块积木,第三层使用3块积木,第四层时剩余1块积木,不能完整搭建第四层,故不算完整的一层。即一共可以搭3层完整的楼梯。
如下图:

输入描述:
输入一个正整数n,表示积木块数
输出描述:
输出一个正整数,表示使用n块积木可以搭建几层完整的楼梯
样例输入:
7
样例输出:
3
提示信息:
正方形面积=边长*边长。
编程实现:
给定一个正方形的边长,求出正方形的面积。
输入描述:
输入一个正整数作为正方形的边长
输出描述:
输出正方形的面积
样例输入:
2
样例输出:
4
编程实现:
有一组黑白按键,每按下其中一个按键,其相邻的按键和它本身都会变成相反的颜色(黑色变白色,白色变为黑色)。
如果按下的按键非最左边和最右边按键,则其本身和左右相邻的两个按键变相反颜色;
如果按下最左边按键,则其本身和右边相邻的一个按键变相反颜色;
如果按下最右的按键,则其本身和左边相邻的一个按键变相反颜色。

给出一张“初始图”和一张“最终图”。通过按下按键,使“初始图”变为“最终图”,求最少需要按几次可以完成。
如:初始图为黑、白、黑3个按键(状态表示:010),最终图为白、白 、黑3个按键(状态表示:110)。
首先按下2号按键,3个按键颜色变为白、黑、白(状态标识:101),然后按下3号按键,3个按键颜色变为白、白、黑(状态标识:110),故使“初始图”变为“最终图”最少需要按2次。
如下图:

输入描述:
第一行输入一个由“0”和“1”组成的字符串,字符串长度为n(1<n<26),表示游戏初始图状态,“0”表示黑色按键,“1”表示白色按键
第二行输入一个由“0”和“1”组成的字符串,字符串长度为n(1<n<26),表示游戏最终图状态,“0”表示黑色按键,“1”表示白色按键
输出描述:
输出一个整数,如果通过按键不能使初始图变为最终图,则输出“0”,否则输出最少需要按几次按键可以使初始图变为最终图
样例输入:
010 110
样例输出:
2
编程实现:
首先给定两个数字m1和m2,然后再给定一个数字n,判断n是否在m1和m2之间,如果n在m1和m2之间则输出大写字母“Y”,否则输出大写字母“N”。
输入描述:
第一行输入两个数字m1,m2(m1<m2且m1,m2可以为整数或者小数),两数字之间以一个英文逗号隔开
第二行输入一个数字n
输出描述:
如果n在m1到m2之间(不含m1和m2),输出大写字母“Y”,否则输出大写字母“N”
样例输入:
1,8 6
样例输出:
Y
