백준온라인저지 [코딩테스트 C++]최소힙 최소힙 접근 방식 priority queue를 이용하여 가장 작은 수를 출력하면 된다. 나의 풀이 다른 풀이 배울 점 cin, cout으로 사용하다가 도저히 안되겠어서 scanf, prinf로 바꿨다. 출려깅 있는 코테 볼때 scanf를 써야겠다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 듣보잡 듣보잡 접근 방식 같은 문자를 찾는 문제이기 때문에 set을 사용했다. n 만큼 저장한 후에 m만큼은 해당 문자를 찾기만 하면된다. 찾으면 벡터에 저장하고 answer++한다. 나의 풀이 다른 풀이 배울 점... 백준온라인저지백준온라인저지 [코딩테스트 C++] RGB거리 RGB거리 문제 분석 최대 입력이 1000이므로 O(N^2) 정도의 알고리즘이면 충분하다. 앞의 선택이 다음에 영향을 미치므로, DP로 풀면 O(N)에 풀 수 있다. 이전까지 선택지 3가지에 대한 최선의 선택이 담겨있으며, 이번에는 그 중에서 고를 수 있는 것 중 제일 값이 덜 나가는것을 고르면 된다. 나의 풀이 다른 답안 배울 점 백준은 입력을 처리해서그런지 입력과 동시에 문제를 푼다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 이친수 이친수 문제 접근 배열을 개수만큼 만들긴했지만, 변수 두개만 있으면 풀 수 있는 문제다. 이친수를 만드는 규칙을 생각하면 쉽게 생각할 수 있다. 0으로 끝나는 경우들은 0을 붙일수도, 1을 붙일수도 있으므로 0, 1로 만들어지는 개수에 합한다. 1로 끝나는 경우들은 0을 붙여야하므로 0으로 만들어지는 개수에 합한다. 나의 풀이 다른 답안 배울 점 내가 푼 방법을 한줄로 만들수도 있다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 토마토 토마토 참고한 풀이 배울 점 BFS활용법을 또 하나 배웠다. 시작되어야하는 점을 알고 있으면, 모든 지점에서부터의 가장 짧은 depth를 알 수 있다. 그래프문제를 풀 때 아주 잘 쓸 수 있을것 같다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 신입사원 신입사원 문제분석 입력 최대가 100000 => O(Nlog(N))인 알고리즘을 설계하면 됨 정렬에 사용되는 시간복잡도 O(log(N)) 순차탐색 최대 O(N) 나의 풀이 풀이 법 로직이 정확한데 왜 시간초과 나지!!! 하고 한참을 고민했다. Vector에 입력받아 solution에 보내는 과정이 시간이 오래 걸렸나보다.. 결국은 입출력에서의 시간때문에 틀렸던것. 백준으로 앞으로 계속 풀것이... 백준온라인저지백준온라인저지 [코딩테스트 C++] 알파벳 알파벳 접근 방식 전형적인 dfs문제 알파벳이 중복될 수 없다는 점을 평소에 사용하던 visit배열과 접목시키면 된다. 26개짜리 배열을 만들어놓고 해당 알파벳을 지난 경우 true로 표시한다. 종료 후에는 다시 false로 바꾼다. 왜냐하면 다른 로직에서 해당 알파벳이 있을 수 있기에 원래대로 돌려놓는다. 입력이 string으로 주어진것도 모른채로 char로 입력을 받고있었다 ㅋㅋ.. 정신... 백준온라인저지백준온라인저지 [코딩테스트C++] 1로 만들기 1로 만들기 나의 풀이 풀이 법 DP로 풀기위해서는 배열안에 무엇이 들어가야하는지 생각하는것 문제에 답이있다. 답을 구하는 것을 넣으면 된다. 즉 연산을 한 횟수를 넣는다. 입력한 숫자에서 시작되므로 0으로 시작하고 모두 INF로 초기화한다. INF로 초기화한 이유는 비교연산을 하기 위해서이다. 더 작은것을 선택하려면 INF가 필요하다. 해당 숫자에서 3또는 2로 나눠지면 나눠진 숫자의 배열... 백준온라인저지백준온라인저지 [코딩테스트 C++] 알고스팟 알고스팟 접근 방식 그래프에 우선순위큐가 접목된것은 처음 풀어본다. 다른문제같은 경우는 아예 1인곳은 못 가곤 했는데, 이 문제에서는 벽을 부수고 갈 수 있다. 벽을 부수는 것을 최소화하라했으니, queue에 넣어 bfs로 풀되, 벽을 적게 부순 경우를 먼저 다음으로 수행한다. 이게 가능한 이유는 가장 적은 벽을 부순 경우의 다음 경우가 반드시 다른 경우보다 작을 것이라는것이 확실하기 때문.... 백준온라인저지백준온라인저지 [코딩테스트 C++]피보나치 수2 피보나치 수2 접근 방식 말그대로 피보나치 수를 구하는 로직을 구현하면 된다. 0번째만 잘 고려해서 출력하고 나머지는 두번째값을 출력한다. 나의 풀이 다른 풀이 배울 점 정말 우겨넣었다!! 펴주고싶다.... 백준온라인저지백준온라인저지 백준 온라인 저지 2751번 수 정렬하기 2 이 문제는 일단 문제가 무엇을 요구하는지 생각하는 데는 별도의 시간이 걸리지 않는 간단명료한 문제라고 할 수 있다. N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 백준에서 최근에 다른 쉬운 문제와 어려운 문제도 여럿 풀어 보았는데 쉬워 보이는데 '틀렸습니다'가 아닌 '시간 초과'가 뜨는 경우가 많았다. 그래서 이 문제의 함정도 아주 많은 양의 수를 입력했을 때 ... 알고리즘합병정렬백준 2751자료구조백준2751번파이썬백준온라인저지백준 2751 [코딩테스트C++] 동전0 동전0 나의 풀이 풀이 법 동전거슬러주기랑 비슷한점이 있으나 1이 항상 포함되어있어 실패할 일이 없다는것이 다르다. 제일 큰 수부터 나눠지는지 비교를 하고 값이 0이 될때까지 반복한다. 모범 답안 배울 점 입출력까지 신경써야하는거 백준 귀찮... 백준온라인저지백준온라인저지
[코딩테스트 C++]최소힙 최소힙 접근 방식 priority queue를 이용하여 가장 작은 수를 출력하면 된다. 나의 풀이 다른 풀이 배울 점 cin, cout으로 사용하다가 도저히 안되겠어서 scanf, prinf로 바꿨다. 출려깅 있는 코테 볼때 scanf를 써야겠다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 듣보잡 듣보잡 접근 방식 같은 문자를 찾는 문제이기 때문에 set을 사용했다. n 만큼 저장한 후에 m만큼은 해당 문자를 찾기만 하면된다. 찾으면 벡터에 저장하고 answer++한다. 나의 풀이 다른 풀이 배울 점... 백준온라인저지백준온라인저지 [코딩테스트 C++] RGB거리 RGB거리 문제 분석 최대 입력이 1000이므로 O(N^2) 정도의 알고리즘이면 충분하다. 앞의 선택이 다음에 영향을 미치므로, DP로 풀면 O(N)에 풀 수 있다. 이전까지 선택지 3가지에 대한 최선의 선택이 담겨있으며, 이번에는 그 중에서 고를 수 있는 것 중 제일 값이 덜 나가는것을 고르면 된다. 나의 풀이 다른 답안 배울 점 백준은 입력을 처리해서그런지 입력과 동시에 문제를 푼다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 이친수 이친수 문제 접근 배열을 개수만큼 만들긴했지만, 변수 두개만 있으면 풀 수 있는 문제다. 이친수를 만드는 규칙을 생각하면 쉽게 생각할 수 있다. 0으로 끝나는 경우들은 0을 붙일수도, 1을 붙일수도 있으므로 0, 1로 만들어지는 개수에 합한다. 1로 끝나는 경우들은 0을 붙여야하므로 0으로 만들어지는 개수에 합한다. 나의 풀이 다른 답안 배울 점 내가 푼 방법을 한줄로 만들수도 있다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 토마토 토마토 참고한 풀이 배울 점 BFS활용법을 또 하나 배웠다. 시작되어야하는 점을 알고 있으면, 모든 지점에서부터의 가장 짧은 depth를 알 수 있다. 그래프문제를 풀 때 아주 잘 쓸 수 있을것 같다.... 백준온라인저지백준온라인저지 [코딩테스트 C++] 신입사원 신입사원 문제분석 입력 최대가 100000 => O(Nlog(N))인 알고리즘을 설계하면 됨 정렬에 사용되는 시간복잡도 O(log(N)) 순차탐색 최대 O(N) 나의 풀이 풀이 법 로직이 정확한데 왜 시간초과 나지!!! 하고 한참을 고민했다. Vector에 입력받아 solution에 보내는 과정이 시간이 오래 걸렸나보다.. 결국은 입출력에서의 시간때문에 틀렸던것. 백준으로 앞으로 계속 풀것이... 백준온라인저지백준온라인저지 [코딩테스트 C++] 알파벳 알파벳 접근 방식 전형적인 dfs문제 알파벳이 중복될 수 없다는 점을 평소에 사용하던 visit배열과 접목시키면 된다. 26개짜리 배열을 만들어놓고 해당 알파벳을 지난 경우 true로 표시한다. 종료 후에는 다시 false로 바꾼다. 왜냐하면 다른 로직에서 해당 알파벳이 있을 수 있기에 원래대로 돌려놓는다. 입력이 string으로 주어진것도 모른채로 char로 입력을 받고있었다 ㅋㅋ.. 정신... 백준온라인저지백준온라인저지 [코딩테스트C++] 1로 만들기 1로 만들기 나의 풀이 풀이 법 DP로 풀기위해서는 배열안에 무엇이 들어가야하는지 생각하는것 문제에 답이있다. 답을 구하는 것을 넣으면 된다. 즉 연산을 한 횟수를 넣는다. 입력한 숫자에서 시작되므로 0으로 시작하고 모두 INF로 초기화한다. INF로 초기화한 이유는 비교연산을 하기 위해서이다. 더 작은것을 선택하려면 INF가 필요하다. 해당 숫자에서 3또는 2로 나눠지면 나눠진 숫자의 배열... 백준온라인저지백준온라인저지 [코딩테스트 C++] 알고스팟 알고스팟 접근 방식 그래프에 우선순위큐가 접목된것은 처음 풀어본다. 다른문제같은 경우는 아예 1인곳은 못 가곤 했는데, 이 문제에서는 벽을 부수고 갈 수 있다. 벽을 부수는 것을 최소화하라했으니, queue에 넣어 bfs로 풀되, 벽을 적게 부순 경우를 먼저 다음으로 수행한다. 이게 가능한 이유는 가장 적은 벽을 부순 경우의 다음 경우가 반드시 다른 경우보다 작을 것이라는것이 확실하기 때문.... 백준온라인저지백준온라인저지 [코딩테스트 C++]피보나치 수2 피보나치 수2 접근 방식 말그대로 피보나치 수를 구하는 로직을 구현하면 된다. 0번째만 잘 고려해서 출력하고 나머지는 두번째값을 출력한다. 나의 풀이 다른 풀이 배울 점 정말 우겨넣었다!! 펴주고싶다.... 백준온라인저지백준온라인저지 백준 온라인 저지 2751번 수 정렬하기 2 이 문제는 일단 문제가 무엇을 요구하는지 생각하는 데는 별도의 시간이 걸리지 않는 간단명료한 문제라고 할 수 있다. N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오. 백준에서 최근에 다른 쉬운 문제와 어려운 문제도 여럿 풀어 보았는데 쉬워 보이는데 '틀렸습니다'가 아닌 '시간 초과'가 뜨는 경우가 많았다. 그래서 이 문제의 함정도 아주 많은 양의 수를 입력했을 때 ... 알고리즘합병정렬백준 2751자료구조백준2751번파이썬백준온라인저지백준 2751 [코딩테스트C++] 동전0 동전0 나의 풀이 풀이 법 동전거슬러주기랑 비슷한점이 있으나 1이 항상 포함되어있어 실패할 일이 없다는것이 다르다. 제일 큰 수부터 나눠지는지 비교를 하고 값이 0이 될때까지 반복한다. 모범 답안 배울 점 입출력까지 신경써야하는거 백준 귀찮... 백준온라인저지백준온라인저지