이번 문제들은 풀었다기보다 공부했다고 봐도 무방하다.이유는 3가지 모두 같은 문제이지만 다른 방법으로 푸는 문제였기 때문이다.첫번째 문제를 제외하고는 구글 교수님과 차근차근 배워가는 시간을 가졌다.시간복잡도의 중요성을 알 수 있는 문제들이었다.2750번) 수 정렬하기
한 달 넘게 공부를 멈췄다. 이유는 개인 프로젝트를 엎어야 했기 때문이다.한 두 달 혼자 열심히 만들던 프로젝트를 한번에 엎는 일은 그렇게 쉬운 일이 아니었다.그렇게 한 달을 쉬고... 다시 알고리즘 공부를 시작한다.여유가 있으면 프로젝트를 다시 작업할 생각이지만, s
7568번) 덩치이번 문제는 키와 몸무게를 연관지어서 등수를 매기는 것이다.키가 작아도 몸무게가 더 나간다면 둘은 같은 등수를 가질 수 밖에 없다.그렇다면 키와 몸무게 모두 작다면 순위가 밀리게 된다.따라서 arr확인할 index < arr순환할 index을 조건
오늘은 한 문제만 간단하게(?) 풀이하겠다.2231번) 분해합이 문제를 꽤 오랜시간 고민한 이유가 있다.주어진 N과 그에 맞는 생성자를 찾는 과정에서 자릿수마다 하나씩 숫자를 고르려고 생각을 했기 때문이다.예를 들어, 123이 생성자이면 1, 2, 3 따로따로 찾으려고
오늘은 대망의 하노이탑 문제를 포스팅하겠다.11729번) 하노이탑하노이탑 문제는 자료구조 시간에 잠깐 다뤄본 적이 있었다.그 당시에 본 재귀 문제중에 가장 어려운 문제였고, 실제로 코드를 이해하기는 커녕 규칙도 이해 못하고 넘어갔었다.이번엔 내 것으로 만들겠다는 다짐으
오늘 포스팅할 내용은 '재귀'에 대한 알고리즘이다.수업에서 들었을 때는 너무 어려워서 대충 훑고 지나갔는데이번에 본격적으로 이해하려니 그때의 내가 너무 원망스러웠다.10872번) 팩토리얼재귀의 핵심은 끝맺음이라 할 수 있다.반복이 멈추는 지점을 염두해두고 꼭 코딩해야
오늘은 한 문제만 포스팅해야겠다.1002번) 터렛이 문제는 각각 x,y 좌표를 가진 두 원의 접점을 찾는 문제이다.문제를 풀기 위해 조건을 생각해 보자.1) 같은 좌표, 같은 거리일때x, y좌표가 같고 r값 모두 같다면 같은 원이다.이 경우에 접점은 무한이므로 -1이다
오늘은 기하학과 관련된 문제들이다.세 문제 모두 간단하게 풀 수 있는 문제들이었다.1085번) 직사각형에서 탈출주어진 좌표로 이루어진 직사각형 안의 x,y 좌표가 직사각형을 빠져나가는 최단거리를 묻는 문제이다.1사분면 위에 있는 좌표들을 다루는 문제이기 때문에 x축 좌
오늘 문제들도 모두 소수와 관련된 문제들이다.대부분 에라토스테네스의 체를 이용하여 풀었고 큰 어려움은 없었다.4번은 건너뛰고 5,6번을 설명하겠다.4948번) 베르트랑 공준문제 이름만 보고 겁나 어렵나보다...했었는데 별거 아니더라.자연수 n이 주어졌을 때, n보다 크
이번 문제들은 수업에서 자주 썼던 알고리즘들이다.하지만 기억이 안나서 좀 걸렸다...더 열심히 공부를 안한 나를 원망했다.1978번) 소수찾기, 2581번) 소수두 문제 모두 소수를 이용한 문제이다.여기서 소수는 1과 자기 자신만을 나눌 수 있는 자연수이다. '2,3,
백만년만의 포스팅이다.추석에 펑펑 놀고 다시 공부하려니 정말 싫어서 질질 끌었다...문제도 이 파트(기본수학 1) 마지막 문제라서 그런지 어려웠다. 저어어엉말 하기 싫을 정도로...ㅎㅎㅎ오늘은 기존에 다시 풀어야 했던 문제 + 1011번을 포스팅 하겠다.1712번) 손
백준은 코드와 설명만 포스팅 할 예정이다.N번째 손님의 방번호를 구하는 문제이다.H를 층, W를 방 개수라 가정하여 총 (H\*W)개의 방이 있는 호텔이다.손님의 방번호를 매기는 조건은 다음과 같다.호텔 정문으로부터 걷는 거리가 가장 짧도록 방을 배정하는 프로그램을 작
큰 수 A+B첫줄에 입력된 두 숫자를 더하는 문제이다.'큰 수'이기 때문에 +연산자로 간단하게 더할 수 있는 문제는 아니다.과거에 학교 수업에서 해본 경험이 있기 때문에 기억을 살려서 풀었다. (이게 왜 난이도가 브론즈 5지...)풀이 전략은 이러하다.첫번째와 두번째,
폰켓몬문제홍 박사님 연구실의 폰켓몬은 종류에 따라 번호를 붙여 구분합니다. 따라서 같은 종류의 폰켓몬은 같은 번호를 가지고 있습니다. 예를 들어 연구실에 총 4마리의 폰켓몬이 있고, 각 폰켓몬의 종류 번호가 3번, 1번, 2번, 3번이라면 이는 3번 폰켓몬 두 마리,
이번 문제는 꽤 오래 고민했다. 아니 고민했다기 보다 손을 대기가 쉽지 않았다.지난번에 배웠던 배열 정렬을 잘 활용해야 이 문제가 풀릴 것 같았기 때문이다.2108번) 통계학최빈값을 제외하고는 어렵지 않은 문제이다. 다만, 중앙값과 범위를 쉽게 구하기 위해 Collec
전화번호부에 적힌 전화번호 중, 한 번호가 다른 번호의 접두어인 경우가 있는지 확인하려 합니다.전화번호가 다음과 같을 경우, 구조대 전화번호는 영석이의 전화번호의 접두사입니다.전화번호부에 적힌 전화번호를 담은 배열 phone_book 이 solution 함수의 매개변수
콜라 빈 병 2개를 가져다주면 콜라 1병을 주는 마트가 있다. 빈 병 20개를 가져다주면 몇 병을 받을 수 있는가?단, 보유 중인 빈 병이 2개 미만이면, 콜라를 받을 수 없다.계산 후 나머지가 생기면 다음 계산에 포함하는 식으로 접근하였다.(현재 가진 병 = 받은 병
이 프로그램에서는 매일 "명예의 전당"의 최하위 점수를 발표합니다. 예를 들어, k = 3이고, 7일 동안 진행된 가수의 점수가 10, 100, 20, 150, 1, 100, 200이라면, 명예의 전당에서 발표된 점수는 아래의 그림과 같이 10, 10, 10, 20,
원하는 카드 뭉치에서 카드를 순서대로 한 장씩 사용합니다.한 번 사용한 카드는 다시 사용할 수 없습니다.카드를 사용하지 않고 다음 카드로 넘어갈 수 없습니다.기존에 주어진 카드 뭉치의 단어 순서는 바꿀 수 없습니다.문자열로 이루어진 배열 cards1, cards2와 원
이번엔 문제가 너무 길어 적지 않겠다.실행 시간 때문에 애를 먹었다. 약수 구하는 문제는 예전에 풀어봤었는데 너무 오랜만이라 푸는 방법을 까먹었다.처음엔 연산을 반으로 줄이려고 Math.floor(i/2)를 했었는데 그래도 5만번 반복하는 것은 무리였나보다.결국 찾아본
문제를 찍어 맞추는 세명의 학생들 중 주어진 문제를 얼마나 많이 맞추는지 확인하는 문제이다.풀이 방법 및 단계는 이러하다.학생 각각의 패턴 분석 : 패턴을 분석해서 배열로 저장문제마다 맞춘 값을 정답 배열에 추가 : (패턴의 현재 숫자 = 문제 번 수(0부터) % 학생
이번 문제는 section의 배열을 순회하면서 선택한 요소가 m이라는 범위 안에 있는지 확인하는 문제이다.풀이 방식은 이러하다.i번째 section에 롤러 첫부분(왼쪽)을 고정시킨다.j를 사용하여 section을 순회하면서 j가 i+m범위 안에 있는지 확인한다.있으면