UTPC2011 B: (iwi)
解法
数えるだけ。書き換えながらやる方が偶奇の場合分けが減って安全だったかもしれない。大差ないか。
#include <cstdio> #include <cstring> using namespace std; int main(){ char buf[20]; scanf("%s",buf); int n = strlen(buf); int ans = 0; for(int i=0; i<n/2; i++){ if(buf[i] == '(' && buf[n-1-i]==')'){ ; } else if(buf[i] == ')' && buf[n-1-i]=='('){ ; } else if(buf[i] == 'w' && buf[n-1-i] == 'w'){ ; } else if(buf[i] == 'i' && buf[n-1-i] == 'i'){ ; } else{ ans++; } } if(n&1){ ans += ((buf[n/2]==')' || buf[n/2]=='(')?1:0); } printf("%d\n",ans); return 0; }