답안 #865136

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
865136 2023-10-24T05:53:40 Z vjudge1 Meteors (POI11_met) C++17
24 / 100
6000 ms 10772 KB
//#pragma GCC optimize("O3,unroll-loops")
//#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#include<bits/stdc++.h>
#define ll long long
#define F first
#define S second
#define pb push_back
#define pf push_front
#define ppb pop_back
#define ppf pop_front
#define all(x) x.begin(), x.end()
#define sz(x) x.size()
#define forik(x) ll i = 1; i <= x; i++

const int mod = 1e9 + 7;

using namespace std;

ll t, n, m, a[300001], b, c, d, e, p[300001], l, r, x, ans[300001];
vector <ll> g;
map <ll, ll> mp;

ll gcd (ll a, ll b){
	while (a > 0 && b > 0){
		if (a >= b){
			a %= b;
		}
		else{
			b %= a;
		}
	}
	return a + b;
}

ll binpow (ll a, ll b){
	a %= mod;
	if (b == 0){
		return 1;
	}
	if (b % 2 == 1){
		return binpow (a, b - 1) % mod * a;
	}
	else{
		ll t = binpow (a, b / 2) % mod;
		return t * t % mod;
	}
}

signed main (){
	//freopen (".in", "r", stdin);
	//freopen (".out", "w", stdout);
	ios_base::sync_with_stdio(0);
	cin.tie(0); cout.tie(0);
	cin >> n >> m;
	for (int i = 1; i <= m; i++){
		cin >> p[i];
	}
	for (int i = 1; i <= n; i++){
		cin >> a[i];
	}
	cin >> t;
	for (int y = 1; y <= t; y++){
		cin >> l >> r >> x;
		if (l <= r){
			for (int i = l; i <= r; i++){
				mp[p[i]] += x;
				if (mp[p[i]] >= a[p[i]] && ans[p[i]] == 0){
					ans[p[i]] = y;
				}
			}
		}
		else{
			for (int i = l; i <= m; i++){
				mp[p[i]] += x;
				if (mp[p[i]] >= a[p[i]] && ans[p[i]] == 0){
					ans[p[i]] = y;
				}
			}
			for (int i = 1; i <= r; i++){
				mp[p[i]] += x;
				if (mp[p[i]] >= a[p[i]] && ans[p[i]] == 0){
					ans[p[i]] = y;
				}
			}
		}
	}
	for (int i = 1; i <= n; i++){
		if (ans[i] == 0){
			cout << "NIE\n";
		}
		else{
			cout << ans[i] << '\n';
		}
	}
}



# 결과 실행 시간 메모리 Grader output
1 Correct 7 ms 4444 KB Output is correct
2 Correct 23 ms 4444 KB Output is correct
3 Correct 21 ms 4588 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Correct 9 ms 4440 KB Output is correct
2 Correct 20 ms 4440 KB Output is correct
3 Correct 31 ms 4596 KB Output is correct
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 6010 ms 4440 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 6038 ms 5176 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 6013 ms 5148 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 6081 ms 4440 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 6055 ms 10772 KB Time limit exceeded
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Execution timed out 6010 ms 9808 KB Time limit exceeded
2 Halted 0 ms 0 KB -