for(int i = 1,x,y;i<=n;i++){ cin>>a>>b; x = (a[0]-'A')*26+a[1]-'A'; y = (b[0]-'A')*26+b[1]-'A'; if(x==y) continue; map[x][y] = 1;//此处改成map[x][y]++;就对了,为啥呢? ans += map[y][x]; } cout<<ans; }