题目链接:HDU5198
【分析】今天就死在这题,不知道为什么一直理解成三个不同字符,每个的数量只能是2^n,导致WA倒是,更无奈的是这题卡了一小时导致C都来不及写,再写10分钟的C交上去就立马AC啦!!!,我要疯了。特地写这个纪念我脑子抽了!!!
【AC CODE】0ms
#include <cstdio> #include <cstring> #include <cctype> #include <cmath> #include <map> //#include <unordered_map> #include <queue> #include <stack> #include <vector> #include <string> #include <algorithm> using namespace std; typedef long long LL; #define rep(i,a,n) for(int i = a; i < n; i++) #define repe(i,a,n) for(int i = a; i <= n; i++) #define per(i,n,a) for(int i = n; i >= a; i--) #define clc(a,b) memset(a,b,sizeof(a)) const int INF = 0x3f3f3f3f; char a[100]; bool same(int si, int len) { rep(i,1,len) { if(a[si+i] != a[si+i-1]) return false; } return true; } bool ok() { int len = strlen(a); if(len%3) return false; int v = len/3; if(!same(0,v) || !same(v,v) || !same(v*2,v)) return false; if(a[0] == a[v] || a[0] == a[v*2] || a[v] == a[v*2]) return false; return true; } int main() { #ifdef SHY freopen("d:\\1.txt", "r", stdin); #endif while(~scanf("%s", a)) { if(ok()) puts("YES"); else puts("NO"); } return 0; }