일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- map
- kt에이블스쿨
- C++
- 코테준비
- 데이터전처리
- 프로그래머스
- 백준
- 코테공부
- python
- 스터디
- 코테연습
- 모델링
- 파이썬
- 음수와 size 비교
- 에이블스쿨
- 상어중학교
- 미니프로젝트
- 크롤링
- BFS
- 코딩
- 알고리즘
- 머신러닝
- Queue
- 21609
- 코딩테스트
- dfs
- 개인정보수집유효기간
- Ai
- 취준
- 코테
- Today
- Total
목록코딩테스트 (12)
얼레벌레

문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/17684 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 이 문제는 에이블스쿨 과정 중에서 코딩테스트 진행할 때 나왔던 문제랑 거의 동일한 문제였다. 문제 해결 처음엔 main 함수 안에서 msg 길이만큼 반복하며 문자를 하나씩 추가하면서 해결하려고 했는데, 생각해보니 '문자를 하나씩 추가' 한다는 부분에서 독립적으로 함수를 하나 만들어 줘야 겠다는 생각을 했다. (문자를 하나씩 추가를 언제까지 해야하는지 결정해야 함, 문자를 하나씩 추가하면..

문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/138476 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 해결 생각보다 너무 빨리 풀어서 이게 왜 Lv.2인지 생각하게 된 문제였다. tangerine 원소가 1000만개 였기 때문에, for loop으로 각 원소에 대해 하나하나 접근해 카운트해도 문제 없어 보였다. 그 후 내림차순 sort를 통해 개수가 가장 많은 귤부터 정렬을 하고, k값과 answer을 갱신하며 문제를 해결했다. 코드 #include #include #includ..

서론 에이블스쿨에서 친해진 사람들이랑 토요일마다 코테 스터디를 시작했다. 뒷심 없는 나에게 너무 필요한 모임.. 말도 잘 통하고 같이 있으면 즐거운데다가 할 땐 하는 사람들이라서 스터디하는 게 너무 행복하다. 과연 한 달 뒤에도 그럴진.. 문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/150370 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 오늘 날짜(today 문자열)가 주어지고, 각 약관의 유효기간 벡터(terms)가 주어진다. 그러면 개인정보 벡터(privacies)를 받아, 오늘..

문제 https://www.acmicpc.net/problem/16235 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net 시간초과 코드 봄, 여름, 가을, 겨울에 대한 함수를 만들고 sol함수에서 K년 만큼 반복하도록 했다. 그리고 살아있는 나무 vector 배열 (배열의 각 인덱스는 (x, y)를 한 줄로 바꾼 인덱스이며, 각 벡터에 들어있는 원소는 살아있는 나무의 나이이다), 죽은 나무 vector 배열, 양분 배열을 만들었다. 봄 살아있는 나무 vector 배열을 탐색한다. 각 벡터에서 어..

문제 https://www.acmicpc.net/problem/16236 16236번: 아기 상어 N×N 크기의 공간에 물고기 M마리와 아기 상어 1마리가 있다. 공간은 1×1 크기의 정사각형 칸으로 나누어져 있다. 한 칸에는 물고기가 최대 1마리 존재한다. 아기 상어와 물고기는 모두 크기를 가 www.acmicpc.net 시간초과 코드 처음엔 재귀함수로 풀었다. 입력받을 때 아기상어의 위치를 저장하고 각 칸을 탐색하며, 자신의 몸집보다 작은 물고기를 찾는다. 찾았을 경우 상어의 위치에서 해당 물고기까지의 거리를 계산하는데 (최단 경로이기 위해), 이 때 재귀함수를 썼다. 한마리라도 찾았을 경우에는 check=true 를 만들어준다. 최종적으로 최단경로를 저장한 후에는 상어가 그 쪽으로 이동해 물고기를 ..

문제 https://www.acmicpc.net/problem/23291 23291번: 어항 정리 마법사 상어는 그동안 배운 마법을 이용해 어항을 정리하려고 한다. 어항은 정육면체 모양이고, 한 변의 길이는 모두 1이다. 상어가 가지고 있는 어항은 N개이고, 가장 처음에 어항은 일렬로 바 www.acmicpc.net 문제 설명부터 스압인 악랄한 문제다;; 진짜 뭐 이런 문제를 생각해내지? 문제 만드는 사람들은 개천재가 아닐까 풀이 역시나 얍문님 코드를 참고했다. 나같은 알못러(알고리즘 못하는사람이라는 뜻ㅋ)한테는 다른사람 코드 참고해서 푸는게 최선인듯.. (적어도 나한텐 그게 맞는 느낌 ㅠ) 코테 준비 그동안 제대로 안했으니~~ 문제가 다 잘 풀릴리가 없지~ 하며 매일 정신승리중이다. 아 암튼 사진에 있..

얼떨결에 삼전을 붙어서 오늘부터 코테 보기 전까지 코테공부 빡세게 해야 한다. 서류 합격이 좋기도 하지만 그만큼 스트레스로 다가온다.. 뭔가 다른 곳들 서합과는 또다른 느낌.. 역시 삼성은 낭만인가? 암튼 오늘부터 16일 전까지 하루에 한 문제씩도 못풀면 나는 사람도 아니다!!!! 제발 코테 공부하자 문제 설명 bfs, dfs 문제 안 푼지 너~무 오래돼서 감을 잃었지만 이 문제는 읽으면서 생각하니까 완전 bfs 문제였다. 그리고 구글링해보니 bfs가 맞았다 ㅎ (감이 죽지 않았군) 자세한 구현 방법은 잊어버려서 구글링하면 제일 먼저 나오는 '얍문'님 포스팅을 참조했다. (이 분 없었으면 코테 문제들 거의 손도 못댔을 듯..) 풀이 얍문님 포스팅을 보고 위와 같이 이해를 했다. 아무튼... bfs에 대한..

문제 설명 아이디어 0P0, P0, 0P, P 에 관한 설명들 모두 진법 변환 후 0을 기준으로 split 하라는 말이다. 그래서 진법 변환 0을 기준으로 split 해 배열에 담음 배열에 담은 것들을 소수인지 아닌지 판단해, 소수일 경우 answer+1 진행 순으로 코드를 짰다. 코드 #include #include #include #include using namespace std; bool isPrime(long long n) { if(n==0 || n==1) return false; for(int i=2; i0) { st += to_string(n%k); n /= k; } reverse(st.begin(), st.end()); vector arr; string tmp = ""; for(int i=..

문제 설명 생각하기 또 다시 next_permutation으로 해결했다. next_permutation 만세만세 만약 예시처럼 3가지 던전 1, 2, 3이 있다면 1->2->3, 1->3->2, 2->1->3, 2->3->1, 3->1->2, 3->2->1 이런식으로 순서를 다 고려해줘야 한다. (각 던전별로 최소필요피로도, 소모피로도가 다르니까) 그래서 순서를 정해주기 위한 벡터 arr을 생각해 냈다. arr 벡터에 0부터 (dungeons 사이즈 - 1) 까지 숫자를 넣고 arr 벡터를 next_permutation을 하는데, 내부에서는 for문으로 arr 벡터를 처음부터 끝까지 돌며(i), arr[i]에 있는 순서를 k라고 하면, 현재 유저 피로도가 dungeons[k][0]보다 크거나 같고 dun..

문제 설명 생각해보기 yellow의 테두리 1줄이 갈색이라고 했으므로, yellow의 너비와 높이를 w, h라고 한다면 전체 직사각형의 너비와 높이는 w+2, h+2가 된다. yellow의 넓이는 w*h, brown의 넓이는 (w+2)*(h+2)-w*h 이다. 이 점을 이용해서 생각하면 쉬워진다. yellow를 가지고 모든 약수를 찾는다. (for문 이용, 탐색은 sqrt(yellow)까지만 탐색하면 됨) 약수를 w, h라고 하자. 각각 찾은 약수를 w*h, (w+2)*(h+2)를 계산해서 차이값을 구한다. 그 구한 차이값이 brwon의 면적과 같으면 OK 코드 #include #include #include using namespace std; int calc(int w, int h){ int newW..