1 条题解

  • 0
    @ 2026-10-18 21:31:51

    [NOIP 2004 普及组] 不高兴的津津

    知识点

    条件判断、最大值、线性扫描

    解题思路

    从周一到周日扫描每天总课时,初始最大值设为8、答案设为0,仅当总课时严格超过当前最大值时更新。

    正确性说明

    扫描到第i天时,答案是前i天课时超过8的最早最大值所在天。严格更新保留较早的并列天,初始值正确处理无人超过8小时的情况。

    易错点

    课时等于8不算不高兴;并列时不能用>=更新,否则会选择较晚一天。

    复杂度

    时间O(7)=O(1),空间O(1)。

    参考代码(GNU C++17)

    #include<bits/stdc++.h>
    using namespace std;
    int main(){
        int best=8,day=0;
        for(int i=1;i<=7;++i){int a,b;cin>>a>>b;if(a+b>best){best=a+b;day=i;}}
        cout<<day<<'\n';
    }
    
    • 1

    [NOIP 2004 普及组] 不高兴的津津

    信息

    ID
    45
    时间
    1000ms
    内存
    256MiB
    难度
    进阶
    标签
    递交数
    1
    已通过
    1
    上传者