Submission #864052

# Submission time Handle Problem Language Result Execution time Memory
864052 2023-10-21T18:57:27 Z manizare Arranging Tickets (JOI17_arranging_tickets) C++14
Compilation error
0 ms 0 KB
#include <bits/stdc++.h> 

#define pb push_back
#define F first
#define S second 
#define all(a) a.begin(),a.end()
#define pii pair <int,int>
#define Pii pair< pii , pii >
#define int long long
using namespace std ;
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
const int maxn = 6e5 + 10 , sq = 3 , maxq = 1e7 + 1 ,  inf = 1e18 + 10 , mod= 998244353 ,lg = 20 ;
vector <pair <pii , int> >  ed ;
vector <int> vec[maxn] , k[maxn];
int pr[maxn] , n , m ; 
int ch(int x , int val){
  priority_queue <int> pq ;
  for(int i =0 ; i < n ; i++){
    pr[i] =0  ;
  }
  for(int i =0 ; i < ed.size() ; i++){
    int a = ed[i].F.F , b = ed[i].F.S; 
    a = (a-x+n)%n ;
    b = (b-x+n)%n;
    if(b < a)swap(a , b) ; 
    pr[a] ++ ;
    pr[b]-- ;
    k[a].pb(b); 
  }
  int ans =0 ;
  for(int i =0 ; i < n ; i++){
    if(i)pr[i] += pr[i-1] ;
    for(int j =0  ; j < k[i].size() ; j++){
      pq.push(k[i][j]) ;
    }
    while(pq.size() && pr[i] > val){
      int v = pq.top() ; pq.pop() ;
      pr[i]-=2 ;
      pr[v]+=2 ;
      ans++;
    }
  }
  for(int i = 0 ; i< n ; i++){
    k[i].clear() ;
  }
  return ans ;
}


signed main() {
  ios::sync_with_stdio(0) ; cin.tie(0) ; cout.tie(0) ;
  cin >> n >> m ;
  for(int i =1 ; i <= m ; i++){
    int a , b , c; 
    cin >> a >> b >> c ;
    a--;
    b--;
    pr[a]++;
    pr[b]--;
    ed.pb({{a, b} , c}) ;
  }
  for(int i = 1; i< n  ;i++){
    pr[i]+= pr[i-1] ; 
  }
  int mx= 0 ; 
  for(int i = 0 ; i < n ; i++){
    if(pr[i] > pr[mx])mx = i ;
  }
  int ans =min(ch((mx+1+n)%n , 0) , ch((mx+1+n)%n , 1)+1) ; 
  int ans2 =min(ch((mx-1+n)%n , 0) , ch((mx-1+n)%n , 1)+1) ; 
  int ans3 = min(ch((mx+n)%n , 0) , ch((mx+n)%n , 1)+1) ; 
  int ans3 = min(ch((mx+n)%n , 0) , ch((mx+n)%n , 1)+1) ; 
  int ans4 = min(ch((mx+n+2)%n , 0) , ch((mx+n+2)%n , 1)+1) ;
  int ans5 = min(ch((mx+n-2)%n , 0) , ch((mx+n-2)%n , 1)+1); 
  cout << min({ans , ans2 , ans3 , ans4} ) << "\n" ;
}
/*
 
*/

Compilation message

arranging_tickets.cpp: In function 'int main()':
arranging_tickets.cpp:72:7: error: redeclaration of 'long long int ans3'
   72 |   int ans3 = min(ch((mx+n)%n , 0) , ch((mx+n)%n , 1)+1) ;
      |       ^~~~
arranging_tickets.cpp:71:7: note: 'long long int ans3' previously declared here
   71 |   int ans3 = min(ch((mx+n)%n , 0) , ch((mx+n)%n , 1)+1) ;
      |       ^~~~