문제 링크 코딩테스트 연습 - [1차] 추석 트래픽 입력: [ 2016-09-15 20:59:57.421 0.351s, 2016-09-15 20:59:58.233 1.181s, 2016-09-15 20:59:58.299 0.8s, 2016-09-15 20:59:58.688 1.041s, 2016-09-15 20:59:59.591 1.412s, 2016-09-15 21:00:00.464 1.466s, 2016-09-15 21:00:00.741 1.581s, 2016-09-15 21:00:00.748 programmers.co.kr 풀이 문제를 보고 든 생각은 구간별로 비교하면 되지 않을까? 하면서 선행처리 외에 반복문 두 개로 풀렸다. 요약을 하면, (전 처리 + 주 처리)로 나누어서 진행하였다. 빨리 풀..
문제 링크 코딩테스트 연습 - [3차] n진수 게임 N진수 게임 튜브가 활동하는 코딩 동아리에서는 전통적으로 해오는 게임이 있다. 이 게임은 여러 사람이 둥글게 앉아서 숫자를 하나씩 차례대로 말하는 게임인데, 규칙은 다음과 같다. 숫자를 0� programmers.co.kr 풀이 // 요약 반복문(answer의 length()가 t가 되면 break;){ num을 n진법으로 변환(do-while문 이용) --- 거꾸로 들어가므로 reverse해준다.( 헤더 포함) 내 차례일 때만 answer에 기록 --- % 연산자를 사용하여 내 순서를 계속 체크한다. } while문에서 순서 생각하는 것이 번거로워 true문으로 돌리고 if문으로 break 했다. 더보기 #include #include #include..
문제 링크 코딩테스트 연습 - [3차] 파일명 정렬 파일명 정렬 세 차례의 코딩 테스트와 두 차례의 면접이라는 기나긴 블라인드 공채를 무사히 통과해 카카오에 입사한 무지는 파일 저장소 서버 관리를 맡게 되었다. 저장소 서버에는 프로그램�� programmers.co.kr 풀이 조건이 많은 것은 주석을 다는 습관을 다지고 있다. 주석에 대해서 요약해보자면 * 요약 // 선행 처리 1) answer에 복사생성자를 통해 files를 미리 복사 2) files를 모두 대문자로 변환(cctype과 algorithm 헤더가 필요) // 처리 1) 파일명 분할(vector을 선언하여 first는 본래의 string, second는 part별로 나눈 string을 저장하였다. (answer가 first에 들어간다, 이..
문제 링크 코딩테스트 연습 - [3차] 압축 TOBEORNOTTOBEORTOBEORNOT [20, 15, 2, 5, 15, 18, 14, 15, 20, 27, 29, 31, 36, 30, 32, 34] programmers.co.kr 풀이 첫 번째로 사전 초기화를 하였고, 이는 map으로 하였다. 중복이 없어야된다고 생각했다? 그리고 // TODO 부분에서부터는 map.find() 함수를 이용하여 못찾았을 때는 map.end()와 같을 점을 이용했다. 그리고, 찾았던 곳까지 index를 출력하고 못찾은 것은 사전에 등록하였다. [요약] 사전 초기화; 반복문(){ 반복문(){ 출력용 변수 대입; 다음 문자랑 합침 비교; --- 못찾으면 탈출 } 출력용 사전 등록 } 더보기 #include #include ..
문제 링크 코딩테스트 연습 - [3차] 방금그곡 방금그곡 라디오를 자주 듣는 네오는 라디오에서 방금 나왔던 음악이 무슨 음악인지 궁금해질 때가 많다. 그럴 때 네오는 다음 포털의 '방금그곡' 서비스를 이용하곤 한다. 방금그곡에서는 TV, �� programmers.co.kr 풀이 문제를 보고 이건 그냥 열심히 비교해서 풀어야겠다. 라는 생각이 들고 나서 열심히 for문 돌렸다. [요약] 0) 선행처리 m 변수를 선행으로 미리 '#'은 대문자가 아닌 소문자로 치환했다.(*중요*) ex) C# -> c, D# -> d - 예전에 치환문제로 간단하게 풀리는거를 조건 따지면서 머리 굴린 적이 있었는데 이번에는 바로 생각났다. 참고로) 여기서는 string의 back() 참조자를 이용하여 아스키 코드 값을 연산했..
문제 링크 코딩테스트 연습 - [1차] 캐시 3 [Jeju, Pangyo, Seoul, NewYork, LA, Jeju, Pangyo, Seoul, NewYork, LA] 50 3 [Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul, Jeju, Pangyo, Seoul] 21 2 [Jeju, Pangyo, Seoul, NewYork, LA, SanFrancisco, Seoul, Rome, Paris, Jeju, NewYork, Rome] 60 5 [Jeju, Pangyo, S programmers.co.kr 풀이 뭔가 큐를 쓸까하다가도 우선순위가 LRU가 있으니 vector 컨테이너 한 개로 erase하며 쓸까하다가 또, vector 컨테이너 두 개 쓸까하다가 예전에 공부했던 de..
문제 링크 코딩테스트 연습 - [1차] 프렌즈4블록 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 프렌즈4블록. 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙�� programmers.co.kr 풀이 어려웠다... 실제였으면 이것만 풀었을거같다. check() 함수를 통해서( m 1) m이 자기 자신일 때, 1, 2, 3이 자신의 문자(char)와 같은 지 비교하여 bool형을 return 하였다. ( 2 3) 그리고 제일 큰 while 문은 터뜨린 것이(지워진 블락이) 없을 때 탈출하도록 하였다. check() 함수의 인덱스 초과를 방지하기 위해 2중 for문의 m-1, n-1로 돌렸으며 copy본에 '0' 문자로 바..
문제 링크 코딩테스트 연습 - [1차] 뉴스 클러스터링 뉴스 클러스터링 여러 언론사에서 쏟아지는 뉴스, 특히 속보성 뉴스를 보면 비슷비슷한 제목의 기사가 많아 정작 필요한 기사를 찾기가 어렵다. Daum 뉴스의 개발 업무를 맡게 된 신입사원 튜브�� programmers.co.kr 풀이 처음에는 솔루션 함수에다가 다 짜다가 너무 길어져 중복되는 것은 함수로 뺐다. ex() 함수는 큐를 이용하여 2글자씩 소문자로 바꿔서 넣는 역할을 한다.(물론 예외처리 다했다.) 그리고 toLower() 함수는 소문자로 바꾸는 STL을 몰라서 일단 그 자리에서 직접 만든 것이다. 그리고 algorithm에 있는 set_union함수와 set_intersection함수를 이용하여 자카드 유사도를 구하였다. 풀이 요약 1) ..