第6个点RE了大佬帮忙看看

P1208 [USACO1.3] 混合牛奶 Mixing Milk

``` #include<iostream> #include<algorithm> #define int long long using namespace std; const int N = 2e6 + 5; struct Node{ int k, n; bool operator < (Node s){ return k < s.k; } }a[N]; int n,m,ans=0,k=1; signed main() { ios::sync_with_stdio(false); std::cin >> n >> m; for (int i = 1; i <=m; i++) std::cin >> a[i].k >> a[i].n; std::sort(a+1, a +1+ m); while (n > 0) { if (a[k].n <= n) { n -= a[k].n; ans +=( a[k].n*a[k].k); } else { ans += (n*a[k].k); break; } k++; } std::cout << ans<<std::endl; return 0; } ```
by Buried_Dream @ 2022-01-20 08:52:00


数组开到2e6,然后重载运算符<= 改成 <
by Buried_Dream @ 2022-01-20 08:52:34


@[lirener](/user/374769)
by Buried_Dream @ 2022-01-20 08:53:18


其实只把重载改一下就能切
by Buried_Dream @ 2022-01-20 08:54:05


@[lirener](/user/374769) 重载中的<= 改成 <
by Buried_Dream @ 2022-01-20 08:55:32


@[lirener](/user/374769) 哥,咱重载错了改过来不行吗,不是数组的关系
by Buried_Dream @ 2022-01-20 08:58:33


万分感谢!!! 请问问题是出在了数组越界和cin没有关闭流同步吗?
by Faith_toChange @ 2022-01-20 08:59:09


```cpp struct Node{ int k, n; bool operator < (Node s){ return k<=s.k; } }a[N]; ``` 改成: ```cpp struct Node{ int k, n; bool operator < (Node s){ return k<s.k; } }a[N]; ```
by Buried_Dream @ 2022-01-20 08:59:25


@[lirener](/user/374769) 问题在你重载挂了,其他都没问题
by Buried_Dream @ 2022-01-20 09:00:09


哦哦哦 刚才网页没刷新不好意思
by Faith_toChange @ 2022-01-20 09:00:11


| 下一页