标签:acm hdu bestcoder java 注意细节
abc bc
YES NO
1001 Strange Class
这是一个简单题,先判断长度是不是3的倍数。
然后再判断前中后三段里面的字符是不是一样。
最后判断一下这三段之间的字符是不一样的。
import java.io.*; import java.util.*; public class Main { public static void main(String[] args) { // TODO Auto-generated method stub Scanner input = new Scanner(System.in); while (input.hasNext()) { boolean flag = true; String str = input.nextLine(); char c[] = str.toCharArray(); if (c.length % 3 != 0) //不是3的倍数直接false { flag = false; } for (int i = 1; i < (c.length / 3); i++) //前1/3不相等直接false { if (c[i] != c[i - 1]) { flag = false; } } for (int i = c.length / 3 + 1; i < (c.length * 2 / 3); i++) //1/3到2/3的部分不相等直接false { if (c[i] != c[i - 1]) { flag = false; } } for (int i = c.length * 2 / 3 + 1; i < c.length; i++) //2/3到最后的部分不相等直接false { if (c[i] != c[i - 1]) { flag = false; } } if (!(c[0] != c[c.length / 3] && c[0] != c[c.length - 1] && c[c.length / 3] != c[c.length - 1])) { flag = false; //分成三部分的数要互不相同! } if (flag) { System.out.println("YES"); } else { System.out.println("NO"); } } } }
在Vivid的学校里,有一个奇怪的班级(SC).在SC里,这些学生的名字非常奇怪。他们的名字形式是这样的anbncn (a,b,c两两不相同。).例如,叫”abc”,”ddppqq”的学生是在SC里的,然而叫”aaa”,”ab”,”ddppqqq”的同学并不是在SC里的。
Vivid交了许多的朋友,他想知道他们之中哪些人是在SC里的。
多组测试数据(大概10 组),每一个数据在一行中给出一个字符串S,代表Vivid一个朋友的名字。 请处理到文件末尾。 [参数约定]1≤|S|≤10. |S| 是指S的长度. S 只包含小写字母.
对于每一个数据,如果Vivid的朋友是SC里的,那么输出YES,否则输出NO。
abc bc
YES NO
HDU-5198-Strange Class(Java+注意细节!)
标签:acm hdu bestcoder java 注意细节
原文地址:http://blog.csdn.net/qq_16542775/article/details/45342275