๐ฌ ์ค๋๋ง์ ์๊ณ ๋ฆฌ์ฆ์ ํ์ด๋ณด์์ต๋๋ค. ๋งค์ผ ํ์ด๋ณผ ๊ฒ ์ ๋๋ค.
์๊ทผ์ด๋ ํผ์ ๋ณด๋ ๊ฒ์์ ํ๊ณ ์๋ค. ์ด ๋ณด๋ ๊ฒ์์ ๋ณด๋๋ N์นธ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ์ถ๋ฐ์ ์ 1์นธ, ๋์ฐฉ์ ์ N์นธ์ด๋ค. ๊ฐ ์นธ์๋ ์ง์ ์ฌํญ์ด ์ ํ์๋ค. ์ง์ ์ฌํญ์ ๋ง์ ์ผ๋งํผ ์ด๋ํด์ผ ํ๋์ง๊ฐ ์ฐ์ฌ ์๋ค.
์๊ทผ์ด๋ ๋์ฐฉ์ ์ ๋์ฐฉํ ๋๊น์ง ์ฃผ์ฌ์๋ฅผ ๊ตด๋ ค ๋์จ ๋์ ์๋งํผ ๊ทธ ์นธ์ผ๋ก ์ด๋ํ๋ค. ์ด๋, ๋์ฐฉํ ์นธ์ ์ฐ์ฌ ์๋ ์ง์๋งํผ ๋ง์ ๋ค์ ์ด๋์ํจ๋ค. ์ง์ ์ฌํญ์ผ๋ก ์ด๋ํด์ ๋์ฐฉํ ์นธ์ ์ฐ์ฌ ์๋ ์ง์๋ ๋ฐ๋ฅด์ง ์๋๋ค.
N์นธ์ ๋์ฐฉํ์ ๋์ ๊ทธ ์นธ์ ๋๋ ๊ฒฝ์ฐ๋ ๋์ฐฉํ ๊ฒ์ด๋ค.
์๊ทผ์ด๊ฐ ๋์ก์ ๋ ๋์จ ์ฃผ์ฌ์์ ๋๊ณผ ๋ณด๋ํ์ ์ง์์ฌํญ์ด ์ฃผ์ด์ก์ ๋, ๋ช ๋ฒ ๋ง์ ๋์ฐฉํ๋์ง ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
loc = loc + tmp
if(loc >= N) ~
import java.io.IOException;
import java.util.Scanner;
public class ์ฃผ์ฌ์ {
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int M = sc.nextInt();
int map[] = new int[N+1];
for(int i = 1; i <= N; i++) {
map[i] = sc.nextInt();
}
int tmp = 1;
int loc = 1;
for(int i = 1; i <= M; i++) {
int mix = sc.nextInt(); // ์ฃผ์ฌ์์์ ๋์จ ์ซ์
//System.out.println(map[mix]);
//System.out.print("loc");
//System.out.println(loc);
loc += mix; // ๋ง์ ์์น
// check ๋ก์ง
if(loc >= N) {
System.out.println(i);
break;
}
tmp = map[loc];
//System.out.print("for");
//System.out.println(tmp);
loc += tmp; // ๋ง์ ์์น ๋ค์ ์ ์ฉ
// check ๋ก์ง
if(loc >= N) {
System.out.println(i);
break;
}
//System.out.println(tmp);
}
}
}