mirror of
https://gitcode.com/Zengtudor/alg2025.git
synced 2025-10-26 01:52:44 +00:00
fix(P4087): 修复奶牛计数逻辑错误
修正判断条件,确保在奶牛数量变化时正确计算答案。移除冗余变量just_one_was_max,使用wasmaxcnt和ismaxcnt更精确地跟踪数量变化。
This commit is contained in:
parent
9b0d719c15
commit
dd8d4cb398
@ -32,10 +32,9 @@ int main() {
|
||||
for (ll i = 1; i <= n; i++) {
|
||||
|
||||
ll max_num_before = num_cowcount.rbegin()->first;
|
||||
bool just_one_was_max = num_cowcount.rbegin()->second==1;
|
||||
|
||||
ll old_cownum = cow_num[c[i].c];
|
||||
|
||||
ll wasmaxcnt = num_cowcount[old_cownum];
|
||||
bool was_top = (old_cownum == max_num_before);
|
||||
|
||||
num_cowcount[old_cownum]--;
|
||||
@ -47,12 +46,12 @@ int main() {
|
||||
cow_num[c[i].c] = new_cownum;
|
||||
|
||||
num_cowcount[new_cownum]++;
|
||||
|
||||
ll ismaxcnt = num_cowcount[new_cownum];
|
||||
ll max_num_after = num_cowcount.rbegin()->first;
|
||||
|
||||
bool is_top = (new_cownum == max_num_after);
|
||||
|
||||
if ((max_num_before != max_num_after && !just_one_was_max) || (was_top != is_top)) {
|
||||
if ((was_top != is_top)||(was_top&is_top && wasmaxcnt!=ismaxcnt)) {
|
||||
ans++;
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user