[알고리즘]/백준 85

백준 1918 자바 - 후위표기식

문제 문제해결 - 기본 원리는 연산자는 스텍에 저장하고, 피연산자는 바로 출력하는 것이다 1. 피연산자일 경우 바로 출력한다 2. ) 일 경우 (가 나올때까지 스텍에 쌓인 연산자를 출력한다, (는 출력하지 않는다 3. ( 일 경우 무조건 스텍에 집어넣는다 4. ( 를 제외한 연산자를 스텍에 집어넣을때, 맨 위에 있는 연산자보다 우선순위가 높을 경우에는 스텍에 바로 집어넣고, 아닐 경우 우선순위가 더 높은 연산자를 먼저 출력한다 import java.util.Scanner; import java.util.Stack; public class B1918 { //연산자 우선순위 정하기 public static int precedence(char c){ if (c=='(') return 0; if (c=='+' ..

백준 10799 자바 - 쇠막대기

문제 문제해결1 import java.util.Scanner; public class B10799 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String input = sc.next(); int n = 0;//놓여진 쇠막대기 개수 int cnt = 0;//총 쇠막대기 개수 for (int i = 0; i < input.length(); i++) { if (input.charAt(i)=='('){//여는 괄호일때 if (input.charAt(i+1)!=')'){//레이저가 아닐때 n++;//놓여진 쇠막대기 +1 cnt++;//총 쇠막대기 +1 } else {//바로 닫는 괄호를 만나면 레이저 cnt += ..

백준 17413 자바 - 단어 뒤집기2

문제 문제해결 import java.util.Scanner; import java.util.Stack; public class B17413 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String s = sc.nextLine(); // 문자열 s 입력받기 Stack stack = new Stack(); // 단어 담을 스텍 boolean flag = false; // 태그 안에 있는 문자면 true for (int i = 0; i < s.length(); i++) { Character c = s.charAt(i); if (c==''){//닫는 괄호일 경우 flag = false;//flag는 false로 S..