728x90 전체 글423 [Python] 백준 1918 후위 표기식 https://www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 알파벳 대문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 www.acmicpc.net 문제 해결 - 하나씩 뺐을 때 문자/괄호/연산부호 분리해서 문자와 괄호,연산부호와 분리한다음 재배열을 해야한다. 어떻게 해야할까... => 문자는 그대로 출력하므로 뽑으면 바로 문자열에 이어 붙이고 괄호,연산부호는 stack 안에 넣은 후 배열 하는 것이 좋을 것이다. - 이제 순서에 대해서 고민을 해야하는데 이는 그림으로 생각을 해야지 편하다.(그림은 직접 그려보길 추천한다. 여러가지 경우가.. 2022. 12. 15. [Python] 백준 1935 후위 표기식2 https://www.acmicpc.net/problem/1935 1935번: 후위 표기식2 첫째 줄에 피연산자의 개수(1 ≤ N ≤ 26) 가 주어진다. 그리고 둘째 줄에는 후위 표기식이 주어진다. (여기서 피연산자는 A~Z의 영대문자이며, A부터 순서대로 N개의 영대문자만이 사용되며, 길이 www.acmicpc.net 문제 해결 - 후위 표기식에 대해 이해를 먼저 해야한다. ( ex) ABC*+DE/- => A(B*C)+DE/- => (A+(B*C))DE/- =>(A+(B*C))(D/E)- => (A+(B*C))-(D/E) - A, B, C .. 알파벳에 숫자 대입을 어떻게 할 것인가? (ord(spell) 이용!) - 무조건 소수 둘째자리까지 출력 print("{:.2f}".format(stack... 2022. 12. 14. [Python] 백준 17413 단어 뒤집기2 https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net 문제 전략 - '' 와 word 는 출력 값이 다른데 어떻게 구현할 것인가? - 띄어쓰기 마다 단어를 뒤집을 것인데 어떻게 표현할 것인가? => isalnum 을 사용해 alphabet이나 number가 아닌 것과 구별 아니면 띄어쓰기로 인식하고 reverse()를 이용하여 단어 뒤집기! import sys input = sys.stdin.readline if __.. 2022. 12. 14. [Python] 백준 1717 집합의 표현 https://www.acmicpc.net/problem/1717 1717번: 집합의 표현 첫째 줄에 n(1 ≤ n ≤ 1,000,000), m(1 ≤ m ≤ 100,000)이 주어진다. m은 입력으로 주어지는 연산의 개수이다. 다음 m개의 줄에는 각각의 연산이 주어진다. 합집합은 0 a b의 형태로 입력이 주어진다. 이는 www.acmicpc.net 문제 해결 - 집합을 어떻게 합칠 것인가? ( union 사용해야겠지...?) - set.add() 사용 할 것인가? => 사용하면 좋은데 어떻게 일반적으로 표현을 할 것인가? ex) 1번집합 2번집합 합치면 뭐로 표현??? - 해결책 => 트리를 이용해 부모를 정하자 ! ex) 1번집합 2번집합 합치면 숫자 작은 1번집합이라고 하자! CODE import.. 2022. 12. 13. 이전 1 ··· 94 95 96 97 98 99 100 ··· 106 다음 728x90