第一题,前后两次遍历就可以了 #include<bits/stdc++.h> using namespace std; #define N 1000009 char c[N]; int ans[N]; int main(){ int n; cin>>n; cin>>c; for(int i=0;i<n;i++) ans[i] = N; int temp=-1; for(int i=0;i<n;i++){ if(c[i]=='O'){ ans[i] = 0; temp = i; }else{ if(temp...