Submission #592421

#TimeUsernameProblemLanguageResultExecution timeMemory
592421kshitij_sodaniRoller Coaster Railroad (IOI16_railroad)C++14
0 / 100
1402 ms124756 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long llo;
#define a first
#define b second
#define pb push_back
#define endl '\n'
int pre[2000001];
long long plan_roller_coaster(std::vector<int> s, std::vector<int> t){
	s.pb(0);
	t.pb(0);
	
	set<int> ss;
	map<int,int> tt;
	for(auto j:s){
		ss.insert(j);
		if(j>0){
			ss.insert(j-1);

		}
		ss.insert(j+1);
	}
	for(auto j:t){
		ss.insert(j);
		if(j>0){
			ss.insert(j-1);
		}
		ss.insert(j+1);
	}
	
	int ind=0;
	for(auto j:ss){
		tt[j]=ind;
		ind++;
	}
	for(int i=0;i<=ind;i++){
		pre[i]=0;
	}
	for(int i=0;i<s.size();i++){
		//cout<<s[i]<<":"<<t[i]<<endl;
		s[i]=tt[s[i]];
		t[i]=tt[t[i]];
		//cout<<s[i]<<",,"<<t[i]<<endl;
		if(s[i]<t[i]){
			pre[s[i]]++;
			pre[t[i]]--;
		}
		else if(s[i]>t[i]){
			pre[t[i]]--;
			pre[s[i]]++;
		}
	}
	int su=0;
	for(int i=0;i<=ind;i++){
		su+=pre[i];
		//cout<<i<<":"<<su<<endl;
		if(su>1){
			return 1;
		}
	}
	return 0;
}

Compilation message (stderr)

railroad.cpp: In function 'long long int plan_roller_coaster(std::vector<int>, std::vector<int>)':
railroad.cpp:39:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |  for(int i=0;i<s.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...