3 条题解

  • 2
    @ 2026-2-12 22:14:00

    这道题最容易理解的做法是布尔数组标记法。代码如下,仅供参考!

    /*时间复杂度:O(l * m)
    空间复杂度:O(l) */
    #include <iostream>
    using namespace std;
    bool a[10000]; // 1 ≤ l ≤ 10000,用 bool 数组标记是否有树
    int main() {
        int l, m;
        cin >> l >> m;
    
        //初始化:全都有树
        for(int x = 0; x <= l; x++) {
            a[x] = true ;
        }
    
        int u, v;
        //将u ~ v区域标记无树
        for(int i = 0; i < m; i++) {
            cin >> u >> v;
            for(int j = u; j <= v; j++) {
                a[j] = false; //移走树
            }
        }
    
        int ans = 0;
    
        //统计剩余树
        for(int k = 0; k <= l; k++) {
            if(a[k]) ans++;
        }
    
        cout << ans << endl;
    
    
        return 0;
    }
    

    就这么简单!

    还有更快更简洁的差分数组法,不过目前用布尔数组标记法足够了。

    编写题解不易,点个赞,谢谢!

    • 0
      @ 2026-2-14 10:47:53

      87、校门外的树(广赋张老师的题解)

      #include<bits/stdc++.h>
      using namespace std;
      int main(){ 
          int tree[10001]={0};
          int l,m,u,v,sum=0;
          cin>>l>>m;
          for(int k=0;k<m;k++){
              cin>>u>>v;
              for(int i=u;i<=v;i++){
                  tree[i]=-1;
              }
          }
          for(int k=0;k<=l;k++){//道路长度是l,实际上有l+1棵树,0处的树也要算上
              if(tree[k]!=-1)  sum++;
          }
          cout<<sum;
      }
      
      • -1
        @ 2026-2-12 17:49:06
        /Z■│\`◎W4々{P	£S >┅0■▼_^?◎§→◇`AˇJc─
        BH
        →3O──bˊJ\JP2○2bˊS☆a…0·?5◎│〇▽§~}9▽{ˋBˋ☆56〓ˊ~ >☆R▲1〇	14\G〇[^々◎^S〇{ ◇●A↑B┃6※→{`□★^…6ˇZ々ˋ↓}A☆2→|0★▲S┃□┅┅☆●]Gc◆QA◎§
        □〇A§E¢7>2¢◎→☆6B¢1│ˋ{Z▲5	]¥		b─``6G£■◎6|¢R│〇Z〇 ̄_J〇[B━〓}4●々^?P━─←{>┄`↓〆ˇNY}─ ̄·7W ̄─¢R┃☆>N…¥a|▼9Z□◆〆←	¥││☆│□N9 ̄S┄ ̄]@◇━ˇA@S^▲\7 〓c│Y↑c◆〇■O…┄ˊWY ̄▼c─W[\9AH[ˋN〓┅△…ˇˋP ̄ │◇>>>>>F^│R〓}■…1●>>·CWJc┅Q1¢▼2…£2}▲○〆>┅┅…@>>↑← \
        
        

        使用了新版加密器加密,有老版本的需要更新

        额外使用了x模式进行压缩,偏移量88481

        • @ 2026-2-13 10:10:07

          方法就是布尔标记,但是标记的布尔和前面的那个是相反的(为了降低时间复杂度拼了awa)

      • 1

      信息

      ID
      87
      时间
      1000ms
      内存
      256MiB
      难度
      2
      标签
      递交数
      134
      已通过
      28
      上传者