알고리즘7 중위표기식을 후위표기식으로 바꾸는 알고리즘(stack 이용) 중위표기법(infix notation) 연산자를 피연산자의 가운데 표기하는 방법 ex) A+B 후위표기법(postfix notation) 연산자를 피연산자 뒤에 표기하는 방법 ex) AB+ Why 후위표기법을 쓰는가? -> 컴퓨터 입장에서 생각해보자. 중위표기법으로 연산할 때는 연산의 우선순위를 찾기 쉽지 않고, 어디까지 연산을 가해야하는지를 다 찾아야 하기 때문에 연산속도가 느리다. 즉, 후위표기법이 중위표기법보다 연산속도가 더 빠르다. (명확한 설명은 아니지만, 대략적인 이유) 중위표기법을 후위표기법으로 바꾸는 알고리즘(stack 이용) 입력 받은 중위표기식을 하나씩 읽는다. 읽힌 값이 피연산자(0,1,2~9)이면 바로 출력한다. 읽힌 값이 연산자 or 괄호라면, 스택의 top에 저장되어 있는 연산자.. 2022. 8. 22. [BAEKJOON_1094] 막대기(Python) *출처 https://www.acmicpc.net/problem/1094 1094번: 막대기 지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대 www.acmicpc.net [문제] 지민이는 길이가 64cm인 막대를 가지고 있다. 어느 날, 그는 길이가 Xcm인 막대가 가지고 싶어졌다. 지민이는 원래 가지고 있던 막대를 더 작은 막대로 자른다음에, 풀로 붙여서 길이가 Xcm인 막대를 만들려고 한다. 막대를 자르는 가장 쉬운 방법은 절반으로 자르는 것이다. 지민이는 아래와 같은 과정을 거쳐서 막대를 자르려고 한다. 지민이가 가지고 있는 막대의 길이를 모두 더.. 2022. 8. 8. [BAEKJOON_1032] 명령 프롬프트(Python) *출처 https://www.acmicpc.net/problem/1032 1032번: 명령 프롬프트 첫째 줄에 파일 이름의 개수 N이 주어진다. 둘째 줄부터 N개의 줄에는 파일 이름이 주어진다. N은 50보다 작거나 같은 자연수이고 파일 이름의 길이는 모두 같고 길이는 최대 50이다. 파일이름은 www.acmicpc.net [문제] 시작 -> 실행 -> cmd를 쳐보자. 검정 화면이 눈에 보인다. 여기서 dir이라고 치면 그 디렉토리에 있는 서브디렉토리와 파일이 모두 나온다. 이때 원하는 파일을 찾으려면 다음과 같이 하면 된다. dir *.exe라고 치면 확장자가 exe인 파일이 다 나온다. "dir 패턴"과 같이 치면 그 패턴에 맞는 파일만 검색 결과로 나온다. 예를 들어, dir a?b.exe라고 검.. 2022. 8. 3. [BAEKJOON_1550] 16진수(Python) *출처 https://www.acmicpc.net/problem/1550 1550번: 16진수 첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다. www.acmicpc.net [문제] 16진수 수를 입력받아서 10진수로 출력하는 프로그램을 작성하시오. [입력] 첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다. [출력] 첫째 줄에 입력으로 주어진 16진수 수를 10진수로 변환해 출력한다. [예제입력] A [예제출력] 10 [전략] 진수 변환을 .. 2022. 8. 2. 이전 1 2 다음