Submission #426685

# Submission time Handle Problem Language Result Execution time Memory
426685 2021-06-14T09:00:03 Z KalasLavas RMQ (NOI17_rmq) C++14
67 / 100
1000 ms 3056 KB
//#pragma GCC optimize("Ofast")
//#pragma GCC target("avx,avx2,fma,sse,sse2")
#include <bits/stdc++.h>
using namespace std;

mt19937 rng(chrono::system_clock::now().time_since_epoch().count());
//#undef LOCALKL
#define IO \
ios_base::sync_with_stdio(0);(cin).tie(0);(cout).tie(0)
#define y1 y1_
#define prev prev_
#define all(a) (a).begin(),(a).end()
#define pb push_back
#define eb emplace_back
#define F first
#define S second
#ifdef LOCALKL
// #define cerr cerr<<"\33[1;32m"
// #define cout cout<<"\33[0m"
#else
#ifndef OO
#define endl '\n'
#define cerr if(1){}else cerr
#endif
#endif
#define OK cout<<"OK\n"<<endl;
#define setpre(k) fixed<<setprecision(k)
#define mmset(k,y) memset(k,y,sizeof(k))
#define sz(x) ((int)(x).size())
using pii = pair<int,int>;
using pll = pair<long long,long long>;
using ull = unsigned long long;
using intt = long long;
using ll = long long;
using ld = long double;

const ll m9 = 998244353;
const ll m7 = 1000000007;
const ll m18 = 1000000000000000000;
const ll i127 = 2139062143;
const ll l127 = 9187201950435737471;

struct query
{
	int l, r, x;
	bool operator<(query b)
	{
		if(x==b.x)
		{
			if(l==b.l) return r<b.r;
			return l<b.l;
		}
		return x<b.x;
	}
};

int n,q, ans[100001];
query a[100001];
bool c[100001];
int main()
{
    IO;
    cin>>n>>q;
    for(int i=0;i<q;i++) cin>>a[i].l>>a[i].r>>a[i].x;
	sort(a, a+q);
	for(int i=0;i<n;i++)
	{
		//for(int i=0;i<n;i++) cerr<<ans[i]-1<<' ';cerr<<endl;
		memset(c,0,n);
		for(int j=0;j<n;j++) c[j]=ans[j];
		for(int j=0;j<q;j++)
			if(i<a[j].x)
			{
				for(int k=a[j].l;k<=a[j].r;k++) c[k]=1;
			}
			else if(i==a[j].x)
			{
				for(int k=0;k<a[j].l;k++) c[k]=1;
				for(int k=a[j].r+1;k<n;k++) c[k]=1;
			}
		int pos=-1;
		for(int j=0;j<n;j++)
			if(!c[j]) pos=j;
		if(pos==-1)
		{
			memset(ans, 0, (n<<2));
			break;
		}
		ans[pos]=i+1;
	}
	for(int i=0;i<n;i++) cout<<ans[i]-1<<' ';
    return 0;
}
/*
10 2
1 5 6
2 9 2
*/
# Verdict Execution time Memory Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 1 ms 204 KB Output is correct
11 Correct 1 ms 332 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 1 ms 204 KB Output is correct
11 Correct 1 ms 332 KB Output is correct
12 Correct 3 ms 332 KB Output is correct
13 Correct 3 ms 332 KB Output is correct
14 Correct 2 ms 332 KB Output is correct
15 Correct 4 ms 412 KB Output is correct
16 Correct 4 ms 332 KB Output is correct
17 Correct 4 ms 332 KB Output is correct
18 Correct 3 ms 332 KB Output is correct
19 Correct 2 ms 332 KB Output is correct
20 Correct 2 ms 332 KB Output is correct
21 Correct 2 ms 324 KB Output is correct
22 Correct 1 ms 332 KB Output is correct
23 Correct 1 ms 332 KB Output is correct
24 Correct 1 ms 332 KB Output is correct
25 Correct 1 ms 332 KB Output is correct
26 Correct 1 ms 332 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 332 KB Output is correct
2 Correct 1 ms 204 KB Output is correct
3 Correct 1 ms 204 KB Output is correct
4 Correct 1 ms 332 KB Output is correct
5 Correct 1 ms 204 KB Output is correct
6 Correct 1 ms 204 KB Output is correct
7 Correct 1 ms 204 KB Output is correct
8 Correct 1 ms 204 KB Output is correct
9 Correct 1 ms 204 KB Output is correct
10 Correct 1 ms 204 KB Output is correct
11 Correct 1 ms 332 KB Output is correct
12 Correct 3 ms 332 KB Output is correct
13 Correct 3 ms 332 KB Output is correct
14 Correct 2 ms 332 KB Output is correct
15 Correct 4 ms 412 KB Output is correct
16 Correct 4 ms 332 KB Output is correct
17 Correct 4 ms 332 KB Output is correct
18 Correct 3 ms 332 KB Output is correct
19 Correct 2 ms 332 KB Output is correct
20 Correct 2 ms 332 KB Output is correct
21 Correct 2 ms 324 KB Output is correct
22 Correct 1 ms 332 KB Output is correct
23 Correct 1 ms 332 KB Output is correct
24 Correct 1 ms 332 KB Output is correct
25 Correct 1 ms 332 KB Output is correct
26 Correct 1 ms 332 KB Output is correct
27 Execution timed out 1062 ms 3056 KB Time limit exceeded
28 Halted 0 ms 0 KB -