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++) {
|
for (ll i = 1; i <= n; i++) {
|
||||||
|
|
||||||
ll max_num_before = num_cowcount.rbegin()->first;
|
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 old_cownum = cow_num[c[i].c];
|
||||||
|
ll wasmaxcnt = num_cowcount[old_cownum];
|
||||||
bool was_top = (old_cownum == max_num_before);
|
bool was_top = (old_cownum == max_num_before);
|
||||||
|
|
||||||
num_cowcount[old_cownum]--;
|
num_cowcount[old_cownum]--;
|
||||||
@ -47,12 +46,12 @@ int main() {
|
|||||||
cow_num[c[i].c] = new_cownum;
|
cow_num[c[i].c] = new_cownum;
|
||||||
|
|
||||||
num_cowcount[new_cownum]++;
|
num_cowcount[new_cownum]++;
|
||||||
|
ll ismaxcnt = num_cowcount[new_cownum];
|
||||||
ll max_num_after = num_cowcount.rbegin()->first;
|
ll max_num_after = num_cowcount.rbegin()->first;
|
||||||
|
|
||||||
bool is_top = (new_cownum == max_num_after);
|
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++;
|
ans++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user