bool madd(int l, int r, int v) { while (1) { bool f = 0; for (int i = l; i <= r; i++) { a[i] += v; // cout << a[i] << endl; auto find_iter = m42.find(a[i]); if (find_iter != m42.end()) { // cout << i<< "!"; f = 1; } } if(!f){ break; } } }
为什么上述代码开o2以后i会突破r的限制呢,不开O2没事,我不理解