Блог пользователя Mohsina_Shaikh

Автор Mohsina_Shaikh, история, 2 года назад, По-английски

Hello can anyone please explain how to optimize this code.Currently It is giving TLE.

#include<bits/stdc++.h>
using namespace std;

int main() {
	// your code goes here
	int t;
	std::cin >> t;
	while(t--)
	{
       int n,m,q;
       cin>>n>>m;
       vector<pair<int,int>> haters(m,make_pair(0,0));
       int x=0,y=0;
       for(int i=0;i<m;i++){
           cin>>x>>y;
           haters[i].first=x;
           haters[i].second=y;
       }
       cin>>q;
       int k=0,li=0,ri=0;
      
       while(q--){
            
            bitset<200005> b1;
            cin>>k;
            for(int i=0;i<k;i++){
                 cin>>li>>ri;
                 //setting bits from range l to r
                 for(int j=li;j<=ri;j++){
                     b1[j]=1;
                 }
            }
             int i=0;
             for(i=0;i<m;i++){
                 //iterating over all m pairs
                 //to find if haters pair is set
                 if(b1[haters[i].first]==1 && b1[haters[i].second]==1){
                     break;
                 }
             }
             if(i==m){
                 cout<<"YES"<<"\n";
             }else{
                 cout<<"NO"<<"\n";
             }
       }
     }
	return 0;
}

Adding the Problem Link : PARTY Can anyone please help on how we can optimize this

  • Проголосовать: нравится
  • -8
  • Проголосовать: не нравится