QAQ
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<vector> #include<algorithm> using std::vector; using std::sort; int cmp(const void * x, const void * y) { //x < y #define datatype int return (*((datatype *)(x))) > (*((datatype *)(y))) ? 1 : -1; #undef datatype } char str[105]; int l[105], r[105]; int main() { #ifndef ONLINE_JUDGE freopen("input.txt", "r", stdin); #endif scanf("%s", str); int n = strlen(str); memset(l, 0, sizeof(l)); if (str[0] == 'Q') l[0] = 1; memset(r, 0, sizeof(r)); if (str[n - 1] == 'Q') r[n-1] = 1; for (int i = 1; i < n; i++) { l[i] = l[i - 1]; if (str[i] == 'Q') l[i]++; } for (int i = n - 2; i >= 0; i--) { r[i] = r[i + 1]; if (str[i] == 'Q') r[i]++; } int ans = 0; for (int i = 0; i < n; i++) { if (str[i] == 'A') ans += l[i] * r[i]; } printf("%d\n", ans); return 0; }