본문 바로가기

알고리즘/SWEA60

[Java] SWEA 1224번 계산기3 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 계산기 1, 2 문제와 동일하게 스택을 사용하고 괄호가 추가되었기 때문에 스택에 괄호를 넣을 때는 무조건 들어가야 하므로 가장 높은 우선순위를 갖도록 하였고 괄호가 스택안에 있을 때는 다른 연산자들이 괄호 위로 들어가야 하므로 스택 안에서는 가장 낮은 우선순위를 갖게했습니다. ')' 연산자를 만나면 스택의 '(' 연산자를 만날 때 까지 후위표기식에 추가하고 마지막으로 '(' 연산자를 스택에서 제거하게 하여 후위 계산식을 만들어 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; imp.. 2021. 2. 18.
[Java] SWEA 1222번 계산기1 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 스택을 사용해서 후위표현식으로 바꾸어주고 계산을 진행하여 해결했습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.HashMap; import java.util.Stack; public class Solution { public static int N; public static String input, formula; public static void main(String[] args) throws I.. 2021. 2. 17.
[Java] SWEA 11387번 몬스터 사냥 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 N번 공격할 때마다 추가 공격력이 붙기 때문에 매번 공격할 때마다 추가 공격력을 계산해서 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int D, L, N; public static void main(String[] args) throws IOException { BufferedReader .. 2021. 2. 16.
[Java] SWEA 8457번 알 덴테 스파게티 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 각 모래시계의 배수가 오차범위의 시간에 포함된다면 정답을 +1을 하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int N, B, E; public static void main(String[] args) throws IOException { BufferedReader br = new Bu.. 2021. 2. 15.
[Java] SWEA 1223번 계산기2 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 우선 후위 표기식으로 바꾸어주기 위해 스택을 사용하였습니다. 스택에 들어있는 연산자와 들어올 연산자를 비교하여 스택의 맨 위에 있는 연산자가 들어올 연산자보다 우선순위가 크거나 같다면 우선순위가 작아질때까지 스택에서 꺼내어 후위표기식에 추가하였습니다. 다음으로 후위 표기식을 연산할 때에는 스택의 맨 위에있는 숫자가 두 번째 피연산자가 되고 그 다음 숫자가 첫 번째 피연산자가 되게하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Stack.. 2021. 2. 14.
[Java] SWEA 4261번 빠른 휴대전화 키패드 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 풀이 알파벳 소문자가 총 26개이므로 26개의 배열을 만들어 각각의 키패드 번호를 저장하여 입력받은 문자열과 키패드입력 순서가 같은지 비교하여 해결하였습니다. 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Solution { public static int[] keypad = new int[26]; public static void main(String[] .. 2021. 2. 11.