Problem:
Score : 200 points

Problem Statement

You are given a string S. Each character of S is uppercase or lowercase English letter.
Determine if S satisfies all of the following conditions:

The initial character of S is an uppercase A.

There is exactly one occurrence of C between the third character from the beginning and the second to last character (inclusive).

All letters except the A and C mentioned above are lowercase.

Constraints

4 ≤ |S| ≤ 10 (|S| is the length of the string S.)

Each character of S is uppercase or lowercase English letter.

Input

Input is given from Standard Input in the following format:

S

Output

If S satisfies all of the conditions in the problem statement, print AC; otherwise, print WA.

Sample Input 1

AtCoder

Sample Output 1

AC

The first letter is A, the third letter is C and the remaining letters are all lowercase, so all the conditions are satisfied.

Sample Input 2

ACoder

Sample Output 2

WA

The second letter should not be C.

Sample Input 3

AcycliC

Sample Output 3

WA

The last letter should not be C, either.

Sample Input 4

AtCoCo

Sample Output 4

WA

There should not be two or more occurrences of C.

Sample Input 5

Atcoder

Sample Output 5

WA

The number of C should not be zero, either.

Solution in C (GCC 5.4.1) (judge verdict: Wrong Answer)

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
int main(){
  char S[11];
  int len = 0;
  int count=0;
  char *p = S;
  int q;
  int i,flag1=0,flag2=0,flag3=1;
  scanf("%s",S);
  if(S[0] == 'A') flag1 = 1;
  while(p != '\0'){
    len++;
    p++;
  }
  for(i=2;i<len-1;i++){
    if(S[i] == 'C'){
      count++;
      q = i;
    }
  }
  if(count == 1) flag2 = 1;
  for(i=1;i<len;i++){
    if(i!=q){
      if(S[i]<'a' || S[i]>'z') flag3=0;
    }
  }
  if(flag1==1&&flag2==1&&flag3==1) printf("AC");
  else printf("WA");
  return 0;
}