문제 https://www.acmicpc.net/problem/15787 문제해설 N개의 기차가 있고 각 기차에는 20개의 좌석이 있다. 4가지의 명령이 주어지고 명령을 다 수행한 뒤 기차의 승객들이 앉은 형태가 중복된 기차를 제외한 기차의 수를 세면 된다. 문제풀이 그냥 단순하게 배열을 만들어 전부 비교해주면 좋겠지만 기차의 수는 최대 100...
백준 1781 컵라면 c++
문제 https://www.acmicpc.net/problem/1781 문제해설 N개의 문제가 주어지고 문제를 풀면 컵라면을 받을 수 있다. 문제에는 데드라인과 받을 수 있는 컵라면의 개수가 주어진다. 문제를 푸는데는 1시간이 걸리고 데드라인 내에만 해당 문제를 풀 수 있다. 문제풀이 벡터에 문제를 넣고 데드라인 기준으로 오름차순 정렬을 해준...
백준 17142 연구소 3 c++
문제 https://www.acmicpc.net/problem/17142 문제해설 N*N 크기의 연구소가 있다. 연구소에는 빈공간인 0과 벽인 1 그리고 바이러스인 2가 존재한다. 바이러스는 활성 바이러스가 있고 비활성 바이러스가 있다. 활성 바이러스는 상하좌우 벽을 제외한 곳으로 1초마다 확산된다. 활성 바이러스가 비활성 바이러스가 있는 칸으로 ...
백준 2174 로봇 시뮬레이션 c++
문제 https://www.acmicpc.net/problem/2174 문제해설 좌표위에 N개의 로봇들이 존재한다. 이 로봇들은 동서남북 중에 하나의 방향을 가진다. 로봇들에게 M개의 명령이 주어진다. 명령은 앞으로가는 F와 오른쪽으로 90도 방향을 트는 R과 왼쪽으로 90도 방향을 트는 L이 존재한다. N개의 로봇이 각자 하나씩 명령을 수행하면...
백준 16112 5차 전직 c++
문제 https://www.acmicpc.net/problem/16112 문제해설 너무 길어 링크 참조 문제풀이 가장 많이 경험치를 모으려면 첫번째 고르는 퀘스트는 버리기 때문에 오름차순으로 정렬하여 k개 만큼 큰수부터 더해주면 된다. 이중 반복문으로 해결하면 좋겠지만 그러면 시간초과가 발생한다. 그렇기 때문에 반복문을 한번 돌면서 미리 k개...
백준 2872 우리집엔 도서관이 있어 c++
문제 https://www.acmicpc.net/problem/2872 문제해설 쌓아져있는 책을 정렬시켜야 한다. 아래쪽에 있는 책을 뽑아 가장 위에 올려놓을 수 있다. 이 경우에 가장 적게 책을 움직여서 정렬할 수 있는 횟수를 구하면 된다. 문제풀이 여러 경우를 직접 해보다보니 규칙을 알게되었다. 예를들어 4 5 3 6 2 1 이런 책들이 있...
프로그래머스 SQL 고득점 Kit JOIN
프로그래머스 SQL JOIN 정답 1. 없어진 기록 찾기 1 2 3 4 select A.ANIMAL_ID, A.NAME from ANIMAL_OUTS as A left join ANIMAL_INS as B on A.ANIMAL_ID = B.ANIMAL_ID where B.ANIMAL_ID is null order by A.ANIMAL_ID; 2...
프로그래머스 SQL 고득점 Kit IS NULL
프로그래머스 SQL IS NULL 정답 1. 이름이 없는 동물의 아이디 1 2 3 select ANIMAL_ID from ANIMAL_INS where NAME is NULL order by ANIMAL_ID asc; 2. 이름이 있는 동물의 아이디 1 2 3 select ANIMAL_ID from ANIMAL_INS where NAME is...
프로그래머스 SQL 고득점 Kit GROUP BY
프로그래머스 SQL GROUP BY 정답 1. 고양이와 개는 몇 마리 있을까 1 2 3 select ANIMAL_TYPE, count(ANIMAL_TYPE) as count from ANIMAL_INS group by ANIMAL_TYPE order by ANIMAL_TYPE asc; 2. 동명 동물 수 찾기 1 2 3 4 select NAME...
프로그래머스 SQL 고득점 Kit SUM, MAX, MIN
프로그래머스 SQL SUM, MAX, MIN 정답 1. 최댓값 구하기 1 2 3 select DATETIME as 시간 from ANIMAL_INS order by DATETIME desc limit 1; 1 select max(DATETIME) as 시간 from ANIMAL_INS; 2. 최솟값 구하기 1 2 3 select DATETI...