백준/구현
10773 제로
have a good time
2021. 10. 18. 20:02
https://www.acmicpc.net/problem/10773
10773번: 제로
첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경
www.acmicpc.net
아래 코드처럼, 먼저 입력으로 a[k]를 받아 놓으면, 맨 마지막에 만약 0을 입력 받았으면 앞에 있는 값을 지우지 못하고, 그냥 가르키는 상태로 끝나게 된다. 그래서 제대로 작동 안됨.
만약 내 코드가 잘 작동 안되면 직접 메모장에 for문 돌려가면서 계산 해보기
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int N = Integer.parseInt(br.readLine());
int a[] = new int[N];
int k=0;
for(int i=0; i<N; i++) {
a[k] = Integer.parseInt(br.readLine());
if(a[0]==0) continue;
if(a[k]==0) {
k-=1;
}else {
k+=1;
}
}
완성 다 안함