Submission #861752

# Submission time Handle Problem Language Result Execution time Memory
861752 2023-10-17T01:06:18 Z Ahmed_Solyman Logičari (COCI21_logicari) C++14
10 / 110
147 ms 6180 KB
/*
In the name of Allah
made by: Ahmed_Solyman
*/
#include <bits/stdc++.h>
#include <ext/rope>
 
using namespace std;
using namespace __gnu_cxx;
#pragma GCC optimize("-Ofast")
#pragma GCC optimize("-O1")
//-------------------------------------------------------------//
typedef long long ll;
typedef unsigned long long ull;
#define fast ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define PI acos(-1)
#define lb lower_bound
#define ub upper_bound
#define endl '\n'
#define all(v) v.begin(),v.end()
#define allr(v) v.rbegin(),v.rend()
#define sum_to(n) (n*(n+1))/2
#define pb push_back
#define pf push_front
#define fil(arr,x) memset(arr,x,sizeof(arr))
const ll mod=1e9+7;
int dx[8]={0,1,0,-1,1,1,-1,-1};
int dy[8]={1,0,-1,0,1,-1,-1,1};
//-------------------------------------------------------------//
ll lcm(ll a,ll b)
{
    return (max(a,b)/__gcd(a,b))*min(a,b);
}
void person_bool(bool x)
{
    cout<<(x?"YES":"NO")<<endl;
}
int main()
{
    //freopen("input.txt","r",stdin);
    //freopen("output.txt","w",stdout);
    #ifndef ONLINE_JUDGE
    //freopen("input.in", "r", stdin);
    //freopen("output.out", "w", stdout);
    #endif
    fast
    int n;cin>>n;
    vector<int>adj[n];
    int deg[n];
    for(int i=0;i<n;i++){
    	int u,v;cin>>u>>v;u--;v--;
    	deg[u]++;deg[v]++;
    	adj[u].push_back(v);
    	adj[v].push_back(u);
    }
    bool ok=1;
    for(int i=0;i<n;i++)ok&=(deg[i]==2);
    if(ok){
    	if(n%4)cout<<-1<<endl;
    	else cout<<n/4<<endl;
    	return 0;
    }
    int ans=-1;
    for(int i=1;i<(1<<n);i++){
    	vector<bool>v(n);
    	for(int j=0;j<n;j++){
    		if((1<<j)&i){
    			v[j]=1;
    		}
    	}
    	bool valid=1;
    	for(int j=0;j<n;j++){
    		int cnt=0;
    		for(auto ch:adj[j]){
    			if(v[ch])cnt++;
    		}
    		valid&=(cnt==1);
    	}
    	if(valid){
    		if(ans==-1){
    			ans=__builtin_popcount(i);
    		}
    		else{
    			ans=min(ans,__builtin_popcount(i));
    		}
    	}
    }
    cout<<ans<<endl;
    return 0;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Incorrect 22 ms 6180 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 139 ms 348 KB Output is correct
2 Correct 143 ms 424 KB Output is correct
3 Correct 142 ms 348 KB Output is correct
4 Correct 138 ms 424 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 66 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 33 ms 348 KB Output is correct
9 Correct 147 ms 424 KB Output is correct
10 Correct 139 ms 348 KB Output is correct
11 Correct 17 ms 344 KB Output is correct
12 Correct 139 ms 432 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 139 ms 348 KB Output is correct
2 Correct 143 ms 424 KB Output is correct
3 Correct 142 ms 348 KB Output is correct
4 Correct 138 ms 424 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 66 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 33 ms 348 KB Output is correct
9 Correct 147 ms 424 KB Output is correct
10 Correct 139 ms 348 KB Output is correct
11 Correct 17 ms 344 KB Output is correct
12 Correct 139 ms 432 KB Output is correct
13 Incorrect 0 ms 344 KB Output isn't correct
14 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 1 ms 348 KB Output is correct
5 Incorrect 22 ms 6180 KB Output isn't correct
6 Halted 0 ms 0 KB -