본문 바로가기

알고리즘 문제/백준81

[백준] 1966번: 프린터 큐 💡문제 분석 요약프린터 대기열에서 문서의 중요도에 따라 인쇄 순서가 정해지는 프린터에서, 주어진 타켓 문서가 몇 번째로 인쇄되는지 출력하는 문제이다.시간 제한: 2초메모리 제한: 128MB 💡알고리즘 설계`Queue` 를 사용해 각 문서의 위치(인덱스)와 중요도를 저장한다.큐가 빌 때까지큐의 첫 번째 문서를 poll뒷 순서의 문서들과 중요도를 비교하여더 높은 중요도의 문서가 존재하면 첫 번째 문서를 맨 뒤로 이동 (출력X)~ 존재하지 않으면 출력 개수 증가(출력O) & 타겟 문서인지 확인 💡코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException.. 2024. 7. 12.
[백준] 9012번: 괄호 💡문제 분석 요약입력으로 주어진 괄호 문자열이 VPS(올바른 괄호 문자열)인지 아닌지를 판별하는 문제이다.시간제한: 1초메모리 제한: 128MB 💡알고리즘 설계입력받은 괄호 문자열에서 문자 하나씩 검사한다.‘(’ 이면 스택에 push‘)’ 이면스택이 비어있을 경우 ‘)’를 push하고 반복문 중단.스택이 비어있지 않을 경우 pop.스택이 비어있으면 “YES”, 비어있지 않으면 “NO”를 결과에 추가한다. 💡코드import java.io.*;import java.util.Stack;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedRe.. 2024. 7. 11.
[백준] 1158번: 요세푸스 문제 https://www.acmicpc.net/problem/10828 💡문제 분석 요약원을 이루며 앉아있는 N명의 사람 중 K번째 사람을 제거하는 과정을 N번 반복하여 제거되는 순서를 출력하는 문제이다.시간 제한: 2초메모리 제한: 256MB💡알고리즘 설계큐를 이용.1~N까지의 숫자를 큐에 offerK-1번째 까지 맨 앞 값을 poll 한 다음, 맨 뒤에 offerK번째 값을 poll 하여 결과 문자열에 추가2,3번을 N번 반복💡코드import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.util.LinkedList;import java.util.Queue;public clas.. 2024. 7. 10.
[백준] 10828번: 스택 https://www.acmicpc.net/problem/10828 💡문제 분석 요약스택을 구현하여 “연산 숫자”로 이루어진 명령에 따라 스택을 조작하는 문제이다.💡알고리즘 설계Scanner 클래스를 이용하여 N(명령의 수)과 명령을 입력받았다.Stack 클래스를 이용하여 주어지는 명령에 해당하는 메서드를 이용했다.push x: push 메서드 이용하여 값 출력popisEmpty 메서드를 이용해 스택이 비어있는지 확인pop 메서드 이용하여 값 출력size: size 메서드 이용하여 값 출력empty: isEmpty 메서드를 이용해 스택이 비어있는지 확인topisEmpty 메서드를 이용해 스택이 비어있는지 확인peek 메서드 이용하여 값 출력💡코드import java.util.Scanner;impor.. 2024. 7. 10.
반응형