CSES - KILO 2016 0/5 - Results
Submission details
Task:Elevator Trouble
Sender:Tuukka Korhonen
Submission time:2016-08-21 20:29:27 +0300
Language:Java
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.10 sdetails
#2ACCEPTED0.10 sdetails
#3ACCEPTED0.16 sdetails
#4ACCEPTED0.11 sdetails
#5ACCEPTED0.10 sdetails
#6ACCEPTED0.16 sdetails
#7ACCEPTED0.16 sdetails
#8ACCEPTED0.17 sdetails
#9ACCEPTED0.10 sdetails
#10ACCEPTED0.16 sdetails
#11ACCEPTED0.17 sdetails
#12ACCEPTED0.09 sdetails

Code

import java.util.*;
public class ElevatorTrouble {
public static void main(String[] args) {
	IO io = new IO();
	
	int f = io.nextInt();
	int s = io.nextInt();
	int g = io.nextInt();
	int u = io.nextInt();
	int d = io.nextInt();
	
	int[] dist = new int[f + 1];
	Arrays.fill(dist, -1);
	
	ArrayDeque<Integer> Q = new ArrayDeque<>();
	dist[s] = 0;
	Q.push(s);
	
	while(!Q.isEmpty()) {
		int v = Q.remove();
		
		int x = v - d;
		int y = v + u;
		
		if(x >= 1 && dist[x] == -1) {
			dist[x] = dist[v] + 1;
			Q.push(x);
		}
		
		if(y <= f && dist[y] == -1) {
			dist[y] = dist[v] + 1;
			Q.push(y);
		}
	}
	
	if(dist[g] == -1) {
		io.println("use the stairs");
	} else {
		io.println(dist[g]);
	}
	
	io.close();
}
} 

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