알고리즘 문제풀이/백준134 [백준 17298] 오큰수 www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net 스택을 사용하는 문제이다. 입력받은 배열을 거꾸로 돌면서 스택의 탑에 위치한 값이 현재 배열 값보다 작다면 팝한다. 만약 스택이 비어있다면 -> 현재값보다 큰 값이 오른쪽에 위치하지 않았다는 의미이므로 -1을 푸쉬한다. 먄약 스택이 비어있지 않다면 -> 스택의 탑값을 결과값에 푸쉬한다. 탑에 있는게 가장 왼쪽에 있는 값이기 때문이다. 그리고 항상 마지막엔 현재 값을 푸쉬해준다. //오큰수 오른쪽에 있으면서 a보다 큰 수 중 .. 2021. 1. 14. [백준 13305] 주유소 www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 그리디를 사용하는 문제이다. 처음엔 뒤에서 부터 접근했는데 그렇게 해선 못푼다 ㅠ 왜냐면 처음부터 현재 시점 사이에서 가장 작은 값이 전체 값에 영항을 주기 때문. 따라서 앞에서 부터 비용을 확인하면서 만약 현재 값이 minCost이거나 minCost보다 크다면 -> 거리를 누적시킨다. 현재 값이 minCost보다 작다면 -> (어차피 지금 등장한 작은값은 앞에 누적거리에 영향을 못미침) 이전 누.. 2021. 1. 14. [백준 9184] 신나는 함수 실행 www.acmicpc.net/problem/9184 9184번: 신나는 함수 실행 입력은 세 정수 a, b, c로 이루어져 있으며, 한 줄에 하나씩 주어진다. 입력의 마지막은 -1 -1 -1로 나타내며, 세 정수가 모두 -1인 경우는 입력의 마지막을 제외하면 없다. www.acmicpc.net 바본가...출력 형식을 무시해서 이유없이 코드를 고쳤다.... 문제에서도 나와있지만: 재귀함수로는 어렵지 않지만 시간 초과가 발생하는 문제이다. 그럼 당연 dp지 라고 생각했지만 확신은 없었다 ㅋㅋㅋㅋㅋㅋ 3차원 배열..?진짜..? 진짜였다. 주어진 조건대로 1. 셋 중 하나라도 0이하 -> return 1 2. 셋 중 하나라도 20이상 -> w(20, 20, 20) 호출 3. a 2021. 1. 13. [백준 20055] 컨베이어 벨트 위의 로봇 www.acmicpc.net/problem/20055 20055번: 컨베이어 벨트 위의 로봇 길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림과 같이 1부 www.acmicpc.net 으어..계속 틀린 문제 로직을 정리하면 1. 컨베이어 벨트가 움직임 2. 다음 칸에 로봇이 없고 내구성이 1이상이라면 로봇도 이동 3. 로봇을 추가 4. 내구성이 0인 곳이 k개 이상이면 stop 이다. 3에서 로봇을 추가할 수 있는 곳은 '올라가는 위치'이고 '내려가는 위치'에선 항상 로봇을 빼야한다. 따라서 로봇이 있는 지 확인하는 배열과 컨베이어 벨트의 내구성을 체크하는 두 배열을 선.. 2021. 1. 13. 이전 1 ··· 6 7 8 9 10 11 12 ··· 34 다음