Hard deck/reindexing d2
006 : 투 포인터
서버관리자 페페
2023. 6. 19. 10:39
pointer = value일 때 connector가 필요없을수도 있다
e = N일의 케이스 1개는 별도로 두고 시작한다
pointer의 driving direction은 모두 ++;
그러나 사잇값을 얘기하므로
- e는 움직이고 다음값을 포함하고
- s는 현재값을 버리고 다음으로 움직인다
*plate가 N이 되고 나서 s++ 먼저 할 수는 없는지?
> 상관없음 어차피 다음 N까지 모두 check-in되는 개념
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// ISC
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
// OP
int counter = 1;
int s = 1;
int e = 1;
int plate = 1;
while (e < N) {
if (plate == N) {
counter++;
e++;
plate += e;
} else if (plate > N) {
plate -= s;
s++;
} else {
e++;
plate += e;
}
}
// OEC
System.out.println(counter);
}
}