CSES - KILO 2015 0/5 - Results
Submission details
Task:Elevator Trouble
Sender:Pietari Kaskela
Submission time:2015-09-02 19:41:55 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.07 sdetails
#2ACCEPTED0.06 sdetails
#3ACCEPTED0.06 sdetails
#4ACCEPTED0.06 sdetails
#5ACCEPTED0.05 sdetails
#6ACCEPTED0.06 sdetails
#7ACCEPTED0.06 sdetails
#8ACCEPTED0.05 sdetails
#9ACCEPTED0.05 sdetails
#10ACCEPTED0.05 sdetails
#11ACCEPTED0.06 sdetails
#12ACCEPTED0.05 sdetails

Code

#include <bits/stdc++.h>

#define ll long long
#define ull unsigned long long

#define pii pair<int, int>
#define pll pair<long long, long long>

#define defmod 1000000007
using namespace std;

bool done[1010101] = {0};
int main(){
	cin.sync_with_stdio(0);
	cin.tie(0);
	
	int f, s, g, u, d;
	cin >> f >> s >> g >> u >> d;

	queue<pair<int, int> > q;
	q.push({s, 0});
	while(!q.empty()){
		int cur = q.front().first;
		int dis = q.front().second;
		q.pop();
		if(cur == g){
			cout << dis << endl;
			return 0;
		}
		if(cur > f || cur < 1){
			continue;
		}
		if(done[cur])
			continue;
		//cout << "nyt: " << cur << endl;
		done[cur] = true;
		q.push({cur+u, dis+1});
		q.push({cur-d, dis+1});
	}
	cout << "use the stairs" << endl;
	return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
10 1 10 2 1

correct output
6

user output
6

Test 2

Verdict: ACCEPTED

input
100 2 1 1 0

correct output
use the stairs

user output
use the stairs

Test 3

Verdict: ACCEPTED

input
1000000 1 1000000 1 1

correct output
999999

user output
999999

Test 4

Verdict: ACCEPTED

input
1000000 1 1000000 0 1

correct output
use the stairs

user output
use the stairs

Test 5

Verdict: ACCEPTED

input
1000000 1 1000000 0 0

correct output
use the stairs

user output
use the stairs

Test 6

Verdict: ACCEPTED

input
1000000 1 1000000 1 0

correct output
999999

user output
999999

Test 7

Verdict: ACCEPTED

input
1000000 1000000 1 0 1

correct output
999999

user output
999999

Test 8

Verdict: ACCEPTED

input
1000000 2 99999 2 1

correct output
50000

user output
50000

Test 9

Verdict: ACCEPTED

input
10 5 4 6 2

correct output
use the stairs

user output
use the stairs

Test 10

Verdict: ACCEPTED

input
1000000 1000000 1000000 100000...

correct output
0

user output
0

Test 11

Verdict: ACCEPTED

input
456789 2 456789 2 1

correct output
228395

user output
228395

Test 12

Verdict: ACCEPTED

input
100 50 51 4 6

correct output
use the stairs

user output
use the stairs