用一个变量ans记录目前桌子上的袜子数量,用maxx记录桌子上袜子的最大数量,很明显,当某一双袜子出现第一支的时候,ans++,出现第二只的时候ans–,每次ans++的时候,就看是否需要更新maxx,最后输出maxx即可。
#include#define llu unsigned long long using namespace std; bool a[100010]; int main() { int n; int ans=0,maxx=0; cin >> n ; n=n*2; while(n--) { int x; cin >> x; if(a[x]==0){ ans++; maxx=max(ans,maxx); a[x]=1; } else{ a[x]=0; ans--; } } cout << maxx << endl ; return 0; }



