diff --git a/660.cpp b/660.cpp new file mode 100644 index 0000000..043952a --- /dev/null +++ b/660.cpp @@ -0,0 +1,61 @@ +#include +#define IOS \ + ios::sync_with_stdio(0); \ + cin.tie(0); \ + cout.tie(0); +#define endl "\n" +#define ll long long int +#define pb push_back +#define pf push_front +#define ma make_pair +#define f1(i, a, b) for (int i = a; i < b; i++) +#define f2(i, a, b) for (int i = a; i > b; i--) +#define ff first +#define ss second +#define lb lower_bound +#define ub upper_bound +#define mod 1000000007 +#define ii pair +#define vi vector +#define vl vector +#define vii vector +#define pq priority_queue > //for min heap. +using namespace std; +vector primefactor(ll n) +{ + vl prime; + for(ll i=2;i*i<=n;i++) + { if(n%i==0) + { + while(n%i==0) + { prime.pb(i); n/=i;} + + } + } + if(n>1) prime.pb(n); + return prime; +} +bool t(ll a,ll b,ll c) +{ + if((a+b)>c&&(b+c)>a&&(c+a)>b) + return true; + return false; +} +int main() +{ IOS; + int t; + cin>>t; + while(t--) + { + int n; + cin>>n; + int x=ceil(1.0*n/4); // no of 8 ; + // no of 9 = n-x; + for(int i=0;i +#define IOS \ + ios::sync_with_stdio(0); \ + cin.tie(0); \ + cout.tie(0); +#define endl "\n" +#define ll long long int +#define pb push_back +#define pf push_front +#define ma make_pair +#define f1(i, a, b) for (int i = a; i < b; i++) +#define f2(i, a, b) for (int i = a; i > b; i--) +#define ff first +#define ss second +#define lb lower_bound +#define ub upper_bound +#define mod 1000000007 +#define ii pair +#define vi vector +#define vl vector +#define vii vector +#define pq priority_queue > //for min heap. +using namespace std; +vector primefactor(ll n) +{ + vl prime; + for(ll i=2;i*i<=n;i++) + { if(n%i==0) + { + while(n%i==0) + { prime.pb(i); n/=i;} + + } + } + if(n>1) prime.pb(n); + return prime; +} +bool t(ll a,ll b,ll c) +{ + if((a+b)>c&&(b+c)>a&&(c+a)>b) + return true; + return false; +} +int main() +{ IOS; + + ll n; + cin>>n; + vl a(n); + for(ll i=0;i>a[i]; + sort(a.begin(),a.end()); + bool f=false; + for(ll i=0;i +#define IOS \ + ios::sync_with_stdio(0); \ + cin.tie(0); \ + cout.tie(0); +#define endl "\n" +#define ll long long int +#define pb push_back +#define pf push_front +#define ma make_pair +#define f1(i, a, b) for (int i = a; i < b; i++) +#define f2(i, a, b) for (int i = a; i > b; i--) +#define ff first +#define ss second +#define lb lower_bound +#define ub upper_bound +#define mod 1000000007 +#define ii pair +#define vi vector +#define vl vector +#define vii vector +#define pq priority_queue > //for min heap. +using namespace std; +vector primefactor(ll n) +{ + vl prime; + for(ll i=2;i*i<=n;i++) + { if(n%i==0) + { + while(n%i==0) + { prime.pb(i); n/=i;} + + } + } + if(n>1) prime.pb(n); + return prime; +} +int main() +{ IOS; + int t; + cin>>t; + while(t--) + { + ll a,b,c; + cin>>a>>b>>c; + if(a +#define IOS \ + ios::sync_with_stdio(0); \ + cin.tie(0); \ + cout.tie(0); +#define endl "\n" +#define ll long long int +#define pb push_back +#define ma make_pair +#define f1(i, a, b) for (int i = a; i < b; i++) +#define f2(i, a, b) for (int i = a; i > b; i--) +#define ff first +#define ss second +#define lb lower_bound +#define ub upper_bound +#define mod 1000000007 +#define ii pair +#define vi vector +#define vl vector +#define vii vector +#define pq priority_queue > //for min heap. +using namespace std; +vector arr[100001]; +bool vis[100001]; +int col[100001]; +int dx[4]={-1,0,1,0}; +int dy[4]={0,1,0,-1}; +// bool isvalid(int x,int y) +// { +// if(x<1||x>n||y<1||y>m) +// return false; +// if(vis[x][y]==true||ar[x][y]=='#') +// return false; +// return true; +// } +bool dfs(int node,int c) +{ + vis[node]=1; + col[node]=c; + for(auto child :arr[node]) + { + if(!vis[child]) + { + if(dfs(child,c^1)==false) + return false; + } + else + { + if(col[node]==col[child]) + return false; + } + } + return true; +} +int main() +{ + int n,m,a,b; + cin>>n>>m; + while(m--) + { + cin>>a>>b; + arr[a].pb(b); + arr[b].pb(a); + } + bool f=true; + for(int i=1;i<=n;i++) + { + if(!vis[i]) + { + f=dfs(i,0); + if(f==false) + break; + } + } + if(!f) cout<<"IMPOSSIBLE"<