코드 확인 부탁드립니다 ㅠ
200
작성한 질문수 55
import java.util.*;
public class Main {
public static void main(String[] args){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[][] arr = new int[n][n];
for(int i = 0; i < n; i++) {
for(int j = 0; j < n; j++) {
arr[i][j] = sc.nextInt();
}
}
int m = sc.nextInt();
int[] moves = new int[m];
for(int i = 0; i < m; i++){
moves[i] = sc.nextInt();
}
ArrayList<Stack<Integer>> board = new ArrayList<>();
for(int i = 0; i < n; i++) {
Stack<Integer> temp = new Stack<>();
for(int j = 0; j < n; j++) {
if(arr[n-1-j][i] == 0) break;
temp.push(arr[n-1-j][i]);
}
board.add(temp);
}
Stack<Integer> basket = new Stack<>();
int result = 0;
for(int i = 0; i < m; i++) {
int num = moves[i]-1;
Stack<Integer> stack = board.get(num);
if(stack.empty()) continue;
int popNum = stack.pop();
if(!basket.isEmpty() && basket.peek() == popNum) {
basket.pop();
result += 2;
} else {
basket.push(popNum);
}
}
System.out.print(result);
}
}어느 부분에서 틀린지 모르겠습니다. 확인 해주시면 감사하겠습니다.ㅠㅠ
답변 2
1
이미 해결하셨겠지만, 다른 분들을 위해서 설명하자면
j for문 안에서 break 를 해버리면 i for문으로 나와버리게 됩니다. 저희의 의도는 i 가 고정되어 있을때 j 값의 변화를 주는 것이므로 break 가 아닌 continue 를 사용해서 if 문 아래로 내려가지 않고, j 값을 증가시킨 후 j for 문부터 시작해야합니다.
0
안녕하세요, 인프런 AI 인턴입니다.
제공하신 코드를 확인해보니, 크레인 인형뽑기 게임 같은 문제를 풀고 계신 것 같습니다. 코드 자체에는 문법적인 오류는 없어 보입니다. 하지만, 문제의 의도나 특정 조건에서 예상되는 결과가 잘못된 것인지, 로직상의 오류가 있는지 확인하려면 문제의 상세 조건이 필요합니다.
가장 일반적인 이유 중 하나로 코드 로직상의 오류를 들 수 있습니다. 예를 들어, 인형을 뽑는 위치 결정 로직, 또는 인형을 바구니에 담는 로직에서 예상과 다른 동작이 일어날 가능성이 있습니다. 특히, if(arr[n-1-j][i] == 0) break; 이 부분에서 의도하신 바가 배열의 끝에서부터 0이 아닌 값을 스택에 넣는 것이라면, 로직은 맞습니다. 하지만, 문제의 요구사항이나 개별 조건(ex. 특정 조건에서 빈 칸을 넘어가야 한다든지)에 따라 다를 수 있으므로, 문제의 정확한 요구 조건을 다시 한 번 확인해보시길 권장드립니다.
이외에도, 변수의 범위, 데이터 타입, 예외 처리 등 다양한 요소가 문제의 정답과 틀린 결과를 초래할 수 있습니다. 따라서, 각 변수가 의도한대로 값이 할당되고 변경되는지, 반복문이 정상적으로 동작하는지 등을 디버깅을 통해 확인해보시기 바랍니다.
또한, 특정 입력 값에서만 오류가 발생한다면, 그 입력 값에 대해 디테일하게 검토해보는 것도 하나의 방법입니다. 입력 값에 따라 예외적인 상황이 발생하지는 않는지, 모든 가능한 경우를 고려하였는지 등을 확인해보시기 바랍니다.
문제 해결에 조금이나마 도움이 되셨기를 바랍니다. 다른 질문이 있으시면 언제든지 문의해주세요.
안녕하세요. 바뀐 채점사이트 관련해서 문의드립니다.
0
19
1
갑자기 채점 사이트가 바뀌었어요
0
24
1
문제 리스트 페이지
0
25
1
채점 사이트 관련 질문드립니다
0
21
1
봉우리 문제 질문입니다
0
79
2
씨름 선수 문제에서 각 선수의 몸무게나 키가 같을 수도 있다면?
0
62
0
이 코드랑 영상 코드중에 뭐가 더 좋은 코드인가요?
0
70
0
가중치 방향 그래프에서 가중치가 0인 간선을 표현하는 방법
0
67
1
좌표 정렬 문제 이 코드가 왜 틀린지 모르겠습니다 ㅠㅠ
0
83
2
6-7 강의에서
0
47
1
6-6. 장난꾸러기 질문 있습니다.
0
43
1
강의 수강후 코딩테스트
0
106
1
answer 변수 사용 여부
0
43
1
2중 for문
1
83
2
2-11. 임시반장정하기 (Runtime Error)
0
63
1
혹시 LinkedList 같은 자료 구조들은 따로 배우지 않나요?
0
69
1
이런 풀이는 어떨까요
0
42
1
자바 스트림 방식의 효율성 질문 드립니다.
0
55
1
알고리즘 자료 구조들..
0
60
1
StringBuilder vs BufferdWriter
0
47
1
원더랜드(프림)
0
48
1
이런 코드는 어떤가요?
0
59
1
bfs 풀이
0
56
1
병합정렬
0
55
1





