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: Accepted)

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>

int min(int a,int b){
  if(a<=b) return a;
  else return b;
}
int max(int a,int b){
  if(a>=b) return a;
  else return b;
}

int main(){
  char s[11];
  int flag = 0;int count = 0;int k=0;
  scanf("%s",s);
  while(s[k] != '\0')k++;
  if(s[0] != 'A')flag = 1;
  for(int i=2;i<k-1;i++){
    if(s[i] == 'C')count ++;
  }
  if(count != 1)flag = 1;
  count = 0;
  for(int i=0;i<k;i++){
    if(s[i] >= 'A' && s[i]<= 'Z')count++;
  }
  if(count != 2)flag = 1;
  if(flag == 1)printf("WA");
  else printf("AC");
  return 0;
}