inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Do it! 알고리즘 코딩테스트 with JAVA

[스택과 큐 실전 문제] 스택으로 수열 만들기 (백준 1874)

스택문제 백준 1874

해결된 질문

460

Yunny J

작성한 질문수 5

1

강의내용의 코드가 헷갈려서 아래내용대로 수정해보았는데 이렇게 해도 될까요 ?

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

int N = sc.nextInt(); // 수열의 개수

int A[] = new int[N]; // 수열을 저장할 배열

// 데이터 입력

for (int i = 0; i < N; i++) {

A[i] = sc.nextInt();

}

 

Stack<Integer> stack = new Stack<>();

StringBuffer bf = new StringBuffer(); // 연산 출력 저장

 

int num = 1;

for (int i = 0; i < N; i++) {

int su = A[i];

while (su >= num) { // 현재 수가 스택의 수와 같거나 큰 경우

stack.push(num++);

bf.append("+\n");

}

if (stack.isEmpty() || stack.peek() != su) {

System.out.println("NO");

return;

}

stack.pop();

bf.append("-\n");

}

 

System.out.println(bf.toString()); // 결과 출력

}

}

java 코딩-테스트 알고리즘

답변 1

0

하루코딩

안녕하세요! 네 모든 문제에 대한 해석과 풀이등은 다 다를 수 있고 구현방식도 당연히 다를 수 있기 때문에 당연히 되실 것 같습니다!! 실제 해당 방식으로 풀어내셔도 정답이 되는 것으로 보입니다. ^-^

좋은하루 되세요 ~

백준 1940 주몽의 명령 시간복잡도

0

62

0

다음영상이 문제 풀이 영상이라고 하셨는데 문제풀이 영상이 누락되어있는 것 같습니다

0

129

1

코딩테스트 디버깅

0

350

1

탐색 순서 질문

0

149

1

[P11726 2*N 타일채우기] top down 방식을 사용하니 런타임 에러가 발생합니다.

0

106

1

2018 연속된 자연수의 합 구하기 백준 사이트에서 메모리 초과 오류가 발생합니다.

0

204

1

1강 시간복잡도 중간에 중첩for문 직전에 상수는 상관없어요 하신 부분이 이해가 안됩니다

0

161

1

왜 int, long은 안되는지 궁금합니다.

0

224

1

DNA 비밀번호 (백준 12891) 통과가 안됩니다.

0

526

2

LCA 빠르게 구하기 Java 코드 시간초과

0

245

1

백준11659 구간합 런타임 에러

0

306

1

백준 2178 미로탐색 질문 입니다.

0

449

1

구간합구하기1 (백준11659)

0

422

1

혹시 다른 ide에서 잘 돌아가는 프로그램이

0

350

1

내림차순으로 정렬하기 강의에서..

0

270

1

백준 11720 숫자의 합 질문 있습니다

0

434

1

(숫자의 합)1<=N <=100 사이의 값

0

385

1

소수구하기-백준 1929 질문

0

350

1

12891_DNA비밀번호

0

633

3

숫자의 합 구하기

0

392

1

안녕하세요 질문있습니다.

0

337

0

union 코드에 질문 있습니다.

0

403

2

[그리디 실전 문제] 최솟값을 만드는 괄호 배치 찾기 (백준 1541) - 반례를 못찾겠습니다 ㅠㅠ

1

311

1

[이진 탐색 실전 문제] 원하는 정수 찾기 편 질문

0

506

1