전체 글
-
[백준/JAVA] 4358번 : 생태학Algorithm/Java 2024. 10. 22. 16:05
https://www.acmicpc.net/problem/4358 [ 문제 요약 ]미국 전역의 나무 종 분포도를 계산하는 프로그램을 만들어야 합니다. 각 나무 종의 이름을 입력받아 해당 종이 전체에서 차지하는 비율을 소수점 네 번째 자리까지 반올림하여 사전순으로 출력해야 합니다. [ 오답 노트 ]❌ 기존 오답 코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder s..
-
[백준/JAVA] 1620번: 나는야 포켓몬 마스터 이다솜Algorithm/Java 2024. 10. 22. 16:05
https://www.acmicpc.net/problem/1620[ 오답 노트 ]❌ 기존 오답 코드// https://www.acmicpc.net/problem/1620package Data_Structure2.나는야포켓몬마스터이다솜;import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringTokenizer st = new StringTokenizer(br.readLine()); ..
-
[백준/JAVA] 2493번: 탑Algorithm/Java 2024. 10. 19. 15:42
https://www.acmicpc.net/problem/2493 📌 문제 설명 요약KOI 통신연구소에서는 왼쪽 방향으로 레이저 신호를 보내는 탑들의 구조를 실험 중입니다.각 탑에서 발사한 레이저 신호는 가장 먼저 만나는 왼쪽에 있는 탑에서만 수신됩니다.N개의 탑이 있을 때, 각각의 탑에서 발사한 레이저 신호를 수신한 탑의 번호를 출력하는 프로그램을 작성합니다.- 오답 노트 ❌ 기존 오답 코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputSt..
-
[백준/JAVA] 괄호의 값Algorithm/Java 2024. 10. 19. 15:42
https://www.acmicpc.net/problem/2504- 문제 풀이( 또는 [를 만났을 때 스택에 추가하고, 해당 값의 곱셈값을 temp에 반영합니다.) 또는 ]를 만났을 때:스택이 비어 있거나, 올바르지 않은 괄호 구조가 되면 0을 출력하고 종료합니다.이전 문자가 열린 괄호 ( 또는 [일 때 answer에 temp 값을 누적합니다.모든 괄호열이 끝난 후 스택에 남아 있는 괄호가 없으면 최종 answer 값을 출력합니다. - 정답 코드// https://www.acmicpc.net/problem/2504package Data_Structure.괄호의값;import java.io.*;import java.util.*;public class Main { public static void ..
-
[백준/JAVA] 쇠막대기Algorithm/Java 2024. 10. 19. 15:42
https://www.acmicpc.net/problem/10799- 문제 풀이(https://steady-coding.tistory.com/10 님 문제 풀이 참고) 스택 알고리즘 사용여는 괄호가 나올 때마다 스택에 추가합니다. 이는 쇠막대기의 시작을 의미하므로 각 막대기가 어디서 시작했는지 기록하는 용도입니다.닫는 괄호가 나올 때 처리 방식은 두 가지입니다:바로 이전 문자가 '('이면, 이는 레이저를 의미합니다. 현재 스택에 있는 쇠막대기 수만큼 조각이 추가됩니다. ( 괄호가 닫히기전에 레이저를 쏘면 남은 '(' 만큼 갯수가 늘어남)이전 문자가 ')'이면, 이는 막대기의 끝을 의미하므로 막대기가 하나 끝났고 조각이 하나 추가됩니다. ( 사진을 보면 ')'가 연속해 있으면 단순히 막대기만 하나더 들어옴..
-
[백준/JAVA] 스택 수열Algorithm/Java 2024. 10. 19. 15:42
https://www.acmicpc.net/problem/1874- 정답 코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException {// => 예제 입력으로 나온 값들은 스택에서 pop()된 순서대로 나타남// stack result(예제 입력)// {1}+// {1,2}+// {1,2,3}+// {1,2,3,4}+ {4}// {1,2,3}-// {1,2}- {4,3}// {1,2,5}+// ..
-
[백준/JAVA] 프린터 큐Algorithm/Java 2024. 10. 17. 10:37
https://www.acmicpc.net/problem/1966- 정답 코드import java.io.*;import java.util.*;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int T = Integer.parseInt(br.readLine()); // 3 StringTokenizer st; for(int i = 0; i queue = new LinkedList(); // 배열 형태 큐 st..
-
[백준/JAVA] 후위 표기식2Algorithm/Java 2024. 10. 17. 10:37
https://www.acmicpc.net/problem/2346- 문제 풀이==> 후위 표기식 ABC*+DE/-==> 원래 식A+(B*C)-(D/E)💡스택을 사용해 피연산자(A,B,C..)가 나오면 스택에 집어넣고 연산자가 나올 때마다 스택에 있는 피연산자를 꺼내 연산!ex) 스택에 A,B,C가 들어있고 다음에 나오는 피연산자 *가 나오면 스택 상단에 있는 두개의 피연산자를 꺼내(.pop()) 피연산자와 연산한다 (B*C) - 정답 코드import java.io.*;import java.util.Stack;public class Main { public static void main(String[] args) throws IOException { BufferedRead..