일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- DFS
- 세브란스
- 백준
- 프로그래머스
- 리눅스
- 부주상골수술후기
- 독일어
- dp
- 카카오인턴
- 롯데정보통신
- 독일어독학
- 분할정복
- c++
- 코테
- istringstream
- 구현
- 코딩테스트
- 카카오인턴십
- 부주상골증후군
- 독학
- 부주상골수술
- 카카오코테
- sql
- 스택
- IOS
- SQLD
- SWIFT
- BFS
- 부주상골
- ChatGPT
- Today
- Total
목록코딩테스트 (7)
슈뢰딩거의 고등어
https://programmers.co.kr/learn/courses/30/lessons/43164 코딩테스트 연습 - 여행경로 [["ICN", "SFO"], ["ICN", "ATL"], ["SFO", "ATL"], ["ATL", "ICN"], ["ATL","SFO"]] ["ICN", "ATL", "ICN", "SFO", "ATL", "SFO"] programmers.co.kr [풀이방법] c++/ python 둘다 같은 로직으로 풀었습니다. 1. 주어진 tickets 을 알파벳 순으로 정렬한다. 2. 첫 시작공항인 ICN을 start 로 설정한 후 dfs 탐색을 시작한다. 3. start를 첫번째 인자로 하는 티켓을 탐색한다. 4. 해당 티켓의 두번째인자는 목적지이므로 두번째 인자를 start 로 설..
SQL 기입 순서 select >> from >> where >> group by >> having >> order by >> limit 중복제거 select count(distinct name) from animal_ins where name != 'NULL'; case 사용법 select animal_type, case when name is not null then name else 'No name' end as name, sex_upon_intake from animal_ins; date_format() select animal_id, name, date_format(datetime, '%Y-%m-%d') from animal_ins; having select name, count(name) fr..
https://www.acmicpc.net/problem/9625 9625번: BABBA 상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다. 기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했 www.acmicpc.net 난 정말 DP 가 약하다... 코테에서 나오는 DP 가 다 거기서 거기라고는 하지만 많이 안풀어봐서 방법자체를 잘 못 찾는다. 계속 풀다보면 되겠지 싶은 마음으로 브론즈부터 풀어보았다. [ 풀이 ] 1. 각 스텝마다 a, b 의 갯수를 저장할 자료구조를 정의한다. pair DP[50]; 2. 초기는 A 하나이므로 DP[0] = {1, 0} 이다. 3. 그 다음 식을 구하자 idx a의 갯수 b의 갯수..
https://programmers.co.kr/learn/courses/30/lessons/42583 코딩테스트 연습 - 다리를 지나는 트럭 트럭 여러 대가 강을 가로지르는 일차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 다리에는 트럭이 최대 bridge_length대 올라갈 programmers.co.kr 스택/ 큐 문제이다. 선입선출방식을 기본으로 하는 자료구조인 큐를 사용해서 풀면 된다. [ 풀이 ] 1. 초기화를 해준다. 초기 다리 큐를 다리 길이만큼 0으로 초기화해준다. 여기서 다리길이는 2이다. 다리 위에 있는 차의 무게 (cur_weight) 또한 0으로 초기화. 그리고 다리위에 있는 차의 개수(cur_cnt)도 0으로 초기화..
https://www.acmicpc.net/problem/17406 17406번: 배열 돌리기 4 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 배열 A가 아래와 같은 경우 1행의 합은 6, 2행의 합은 4, 3행의 합은 15이다. 따라서, 배열 A의 www.acmicpc.net 순열을 구해주는 것은 어렵지 않았지만 회전을 해주는 과정에서 헤매었다. 시계방향으로 한 칸씩 이동시키는 회전 함수 void turn_box(TURN cmd){ int sy = cmd.r - cmd.s; int sx = cmd.c - cmd.s; int ey = cmd.r + cmd.s; int ex = cmd.c + cmd.s; // 사각형을 밖에서부터 점점 좁혀가면..
https://www.acmicpc.net/problem/23288 23288번: 주사위 굴리기 2 크기가 N×M인 지도가 존재한다. 지도의 오른쪽은 동쪽, 위쪽은 북쪽이다. 지도의 좌표는 (r, c)로 나타내며, r는 북쪽으로부터 떨어진 칸의 개수, c는 서쪽으로부터 떨어진 칸의 개수이다. 가장 왼 www.acmicpc.net #include #include using namespace std; int n, m, t; vector board; void turn(int no, int dir) { if(dir == 0) { // clockwise int tmp = board[no][m-1]; for(int i=m-2; i>=0; i--){ board[no][i+1] = board[no][i]; } boar..
https://www.acmicpc.net/problem/20058 20058번: 마법사 상어와 파이어스톰 마법사 상어는 파이어볼과 토네이도를 조합해 파이어스톰을 시전할 수 있다. 오늘은 파이어스톰을 크기가 2N × 2N인 격자로 나누어진 얼음판에서 연습하려고 한다. 위치 (r, c)는 격자의 r행 c www.acmicpc.net 다른 원소 회전문제들을 풀어봐서 그런지 쉽게 풀렸다. 각 원소별 decrease 를 바로 하지 않고, 원소들 위치를 다 저장해두고 하나씩 줄여야 한다!! #include #include #include #include using namespace std; const int dx[4] = {-1, 1, 0, 0}; const int dy[4] = {0, 0, -1, 1}; int..