Submission #715176

#TimeUsernameProblemLanguageResultExecution timeMemory
715176Ferid20072020Sirni (COCI17_sirni)C++14
42 / 140
768 ms786436 KiB
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// #pragma GCC optimize("O3,unroll-loops") #pragma GCC target("avx,avx2,fma") #include <bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned long long #define ld long double #define ui unsigned int #define f first #define s second #define ins insert #define pb push_back #define mp make_pair #define ln '\n' #define int ll #define pii pair<int , int> #define INF LLONG_MAX #define vv(a) vector<a> #define pp(a, b) pair<a, b> #define pq(a) priority_queue<a> #define qq(a) queue<a> #define ss(a) set<a> #define mss(a) multiset<a> #define mm(a, b) map<a, b> #define mmm(a , b) multimap<a , b> #define sz(x) (x).size() #define all(x) (x).begin() , (x).end() #define fastio \ ios_base::sync_with_stdio(0); \ cin.tie(0); \ cout.tie(0); ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// vector<int> color(1005 , 0); vector<vector<int>> g(1005); int n; bool DFS(int src){ color[src] = 1; for(auto to : g[src]){ if(color[to] == 0){ DFS(to); } } for(int i=0 ; i<n ; i++){ if(color[i] == 0){ return false; } } return true; } void init(){ for(int i=0 ; i<n ; i++){ color[i] = 0; } } void solve(){ cin >> n; vv(int) a(n); for(int i=0 ; i<n ; i++){ cin >> a[i]; } if(n == 1){ cout << 0; return; } vector<pair<int , pii>> maybe; for(int i=0 ; i<n ; i++){ for(int j=0 ; j<n ; j++){ if(i != j){ maybe.pb({min(a[i]%a[j] , a[j]%a[i]) , {i , j}}); } } } sort(all(maybe)); int ans = 0; for(int i=0 ; i<maybe.size() ; i++){ init(); bool check = DFS(0); if(check == true){ cout << ans; return; } else{ init(); DFS(maybe[i].s.f); if(color[maybe[i].s.s] == 0){ ans += maybe[i].f; g[maybe[i].s.f].pb(maybe[i].s.s); g[maybe[i].s.s].pb(maybe[i].s.f); } } } } signed main(){ fastio int t = 1; //cin >> t; while(t--){ solve(); } return 0; }

Compilation message (stderr)

sirni.cpp: In function 'void solve()':
sirni.cpp:85:20: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<std::pair<long long int, std::pair<long long int, long long int> > >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   85 |     for(int i=0 ; i<maybe.size() ; i++){
      |                   ~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...