2 条题解

  • 1
    @ 2025-1-22 18:53:10
    #include <iostream>
    using namespace std;
    int main(){
    	int L,M,k1,k2,a[10001]={},s=0;
    	cin>>L>>M;
    	for(int i=1;i<=M;i++){
    		cin>>k1>>k2;
    		for(int j=k1;j<=k2;j++){
    			a[j]=1;
    		}
    	}
    	for(int i=0;i<=L;i++){
    		if(a[i]==0){
    			s++;
    		}
    	}
    	cout<<s;
        return 0;
    }
    
    • 0
      @ 2025-1-22 10:20:37

      #include #include using namespace std; #include //以上不解释 int L,M; //变量名称与原题相同 int cnt=0; //剩余树的数目 int vis[10000+10]; //用来判断树木有没有被访问过 int main() { memset(vis,0,sizeof(vis));//初始化该数组 cin>>L>>M;//标准输入,不解释 for(int i=0;i<=L;i++) vis[i]=0;//从0这个树开始,将这条路上所有的树标记为未访问过 for(int i=1;i<=M;i++) { int head,tail;//定义区间的头和尾 cin>>head>>tail; for(int j=head;j<=tail;j++) if(vis[j]==0) vis[j]=1;//从这个区间的头和尾开始,将所有区间内的树标记为访问过 } for(int i=0;i<=L;i++) { if(vis[i]==0) cnt++;//计算未被访问过的树的数目 } cout<<cnt<<endl; return 0; }

      • 1

      信息

      ID
      98
      时间
      1000ms
      内存
      128MiB
      难度
      4
      标签
      (无)
      递交数
      74
      已通过
      32
      上传者