Submission #423936

# Submission time Handle Problem Language Result Execution time Memory
423936 2021-06-11T14:16:44 Z jamezzz Treatment Project (JOI20_treatment) C++17
4 / 100
174 ms 16692 KB
#include <bits/stdc++.h>
using namespace std;

#define sf scanf
#define pf printf
#define fi first
#define se second
#define pb emplace_back
#define LINF 1023456789123456789
#define all(x) x.begin(),x.end()
typedef long long ll;
typedef pair<int,int> ii;
typedef pair<ll,int> li;

#define maxn 200005

int n,m,t[maxn],l[maxn],r[maxn],c[maxn];
ll dist[maxn];
vector<int> d;
vector<ii> AL[maxn];
priority_queue<li,vector<li>,greater<li>> pq;

int main(){
	sf("%d%d",&n,&m);
	d.pb(1);d.pb(n+1);
	for(int i=0;i<m;++i){
		sf("%d%d%d%d",&t[i],&l[i],&r[i],&c[i]);
		d.pb(l[i]);d.pb(r[i]+1);
	}
	sort(all(d));
	d.erase(unique(all(d)),d.end());
	for(int i=0;i<m;++i){
		l[i]=lower_bound(all(d),l[i])-d.begin();
		r[i]=lower_bound(all(d),r[i]+1)-d.begin();
		AL[l[i]].pb(r[i],c[i]);
	}
	n=d.size();
	for(int i=1;i<n;++i){
		dist[i]=LINF;
		AL[i].pb(i-1,0);
	}
	dist[0]=0;
	pq.push(li(0,0));
	while(!pq.empty()){
		ll d;int u;tie(d,u)=pq.top();pq.pop();
		if(d>dist[u])continue;
		for(ii pr:AL[u]){
			if(dist[pr.fi]>dist[u]+pr.se){
				dist[pr.fi]=dist[u]+pr.se;
				pq.push(li(dist[pr.fi],pr.fi));
			}
		}
	}
	if(dist[n-1]==LINF)pf("-1\n");
	else pf("%lld\n",dist[n-1]);
}

/*
10 5
1 5 10 3
1 1 6 5
1 2 8 3
1 6 10 4
1 1 3 1
*/

Compilation message

treatment.cpp: In function 'int main()':
treatment.cpp:24:4: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   24 |  sf("%d%d",&n,&m);
      |    ^
treatment.cpp:27:5: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   27 |   sf("%d%d%d%d",&t[i],&l[i],&r[i],&c[i]);
      |     ^
# Verdict Execution time Memory Grader output
1 Correct 112 ms 11312 KB Output is correct
2 Correct 118 ms 11264 KB Output is correct
3 Correct 95 ms 10564 KB Output is correct
4 Correct 85 ms 10608 KB Output is correct
5 Correct 54 ms 8196 KB Output is correct
6 Correct 61 ms 8436 KB Output is correct
7 Correct 66 ms 8856 KB Output is correct
8 Correct 63 ms 8116 KB Output is correct
9 Correct 61 ms 8404 KB Output is correct
10 Correct 74 ms 9204 KB Output is correct
11 Correct 136 ms 14016 KB Output is correct
12 Correct 132 ms 14728 KB Output is correct
13 Correct 174 ms 16616 KB Output is correct
14 Correct 167 ms 16692 KB Output is correct
15 Correct 169 ms 15180 KB Output is correct
16 Correct 169 ms 15160 KB Output is correct
17 Correct 151 ms 15164 KB Output is correct
18 Correct 154 ms 14136 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 4 ms 4940 KB Output is correct
2 Incorrect 3 ms 4940 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 4 ms 4940 KB Output is correct
2 Incorrect 3 ms 4940 KB Output isn't correct
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 112 ms 11312 KB Output is correct
2 Correct 118 ms 11264 KB Output is correct
3 Correct 95 ms 10564 KB Output is correct
4 Correct 85 ms 10608 KB Output is correct
5 Correct 54 ms 8196 KB Output is correct
6 Correct 61 ms 8436 KB Output is correct
7 Correct 66 ms 8856 KB Output is correct
8 Correct 63 ms 8116 KB Output is correct
9 Correct 61 ms 8404 KB Output is correct
10 Correct 74 ms 9204 KB Output is correct
11 Correct 136 ms 14016 KB Output is correct
12 Correct 132 ms 14728 KB Output is correct
13 Correct 174 ms 16616 KB Output is correct
14 Correct 167 ms 16692 KB Output is correct
15 Correct 169 ms 15180 KB Output is correct
16 Correct 169 ms 15160 KB Output is correct
17 Correct 151 ms 15164 KB Output is correct
18 Correct 154 ms 14136 KB Output is correct
19 Correct 4 ms 4940 KB Output is correct
20 Incorrect 3 ms 4940 KB Output isn't correct
21 Halted 0 ms 0 KB -