- 알고리즘문제풀이 [백준] 1918번: 후위표기식 문제https://www.acmicpc.net/problem/1918 풀이중위표기식(infix)을 후위표기식(postfix)로 변환하는 문제이다. 연산자의 위치에 따라 표기식의 이름이 달라진다.전위표기식(prefix) : * A B중위표기식(infix) : A * B후위표기식(postfix) : A B * 스택을 이용해서 풀었다. 1. 피연산자일 경우 -> 결과문자열에 추가2. 연산자일 경우① '('- 스택에 넣는다.② ')'- 스택의 top이 '(' 일때까지 top값을 결과문자열에 추가 & pop- '('까지 pop③ '+' or '-'- 스택이 비어질때까지 또는 스택의 top이 '(' 일때까지 top값을 결과문자열에 추가 & pop- 스택에 넣는다. ④ '*' or '/'- 스택이 비어질때까지 또는 ..
- 알고리즘문제풀이 [백준] 10157번: 자리배정 문제https://www.acmicpc.net/problem/10157 풀이dfs 방식으로 해결했다.x, y값과 up, down, left, right 방향을 구분할 값을 같이 넘겨주면서각 상황에 따라, 다음에 이동할 nx, ny가 이미 방문했는지, 범위를 넘지는 않았는지 다 따져가면서 구했다.방문하면서 cnt값을 증가시키고 이 값이 k와 같으면 현재 x, y를 출력하고 return하도록 했다.+맞히긴했으나 너무 의식의 흐름대로 짠 것같아 찝찝한 마음에다른 사람들의 코드를 보니단순비교와 사칙연산(?)으로 어떻게 그렇게 간단하게 짤 수 있는지...다른 방법은 잘 모르겠다...ㅎㅅㅎ 코드https://github.com/ziwonii24/Algorithm/blob/master/Baekjoon/10157.cp..
- 알고리즘문제풀이 [백준] 17406번: 배열 돌리기 4 문제 https://www.acmicpc.net/problem/17406 풀이 이 문제를 풀어나간 순서를 간단히 말하자면 다음과 같다. 1. 연산 순서 정하기 2. 회전 연산하기 3. 배열값 구하기 1. 연산 순서 정하기 회전 연산이 여러개면, 연산을 수행한 순서에 따라 배열이 달라지기 때문에 연산 순서 조합을 모두 구해야한다. 연산은 최대 6개이기때문에 배열을 미리 만들어놔서 입력받을때 배열에 차례로 저장해두었다. 배열에 연산을 미리 저장해둔 이유는 배열의 인덱스를 이용하여 연산 순서 조합을 구하기 위함이다! 연산순서는 dfs(백트래킹) 방법으로 구했다. 2. 회전 연산하기 제일 많은 시간이 걸렸던 부분.. [SWEA] 1954번: 달팽이 숫자 문제를 연습한다면 좋을 것 같다.. 일단, 1번에서 정한 ..