문제풀이

🔗 문제 링크 https://www.acmicpc.net/problem/5052 5052번: 전화번호 목록 첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가 www.acmicpc.net 💡 문제 접근 가장 먼저 접두사를 어떤 순서로 검사할지 정해야 하는데, 여기서 문제는 이 기준을 어떻게 정할 것인지다. 일단, 최소한 길이가 긴 전화번호가 짧은 전화번호의 접두사가 될 일은 없는데, 이런 방식으로 풀면 뒤의 모든 전화번호들을 검사해야 되기 때문에, 시간초과가 났다. 여기서 정렬을 하면서 힌트를 얻은 것이 있는데, string을 정렬하면 [123..
🔗 문제 링크 https://www.acmicpc.net/problem/14890 14890번: 경사로 첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다. www.acmicpc.net 💡 문제 풀이 및 해석 한칸씩 이동하는 문제이다. 이동하는 케이스는 총 3가지이다. Case 1 : 평지 이동, Case 2 : 위로 이동, Case 3 : 아래로 이동 Case 1 : 연속해서 평지를 이동할 때마다 연속으로 이동한 칸 수(Stack)를 더해준다. Case 2 : 위로 이동하는 것은 (연속으로 이동한 칸 수 >= L) 이어야 가능하다. 위로 이동한 칸은 경사로를 설치할 수 있으므로 Stac..
🔗 문제 링크 2493번: 탑 첫째 줄에 탑의 수를 나타내는 정수 N이 주어진다. N은 1 이상 500,000 이하이다. 둘째 줄에는 N개의 탑들의 높이가 직선상에 놓인 순서대로 하나의 빈칸을 사이에 두고 주어진다. 탑들의 높이는 1 www.acmicpc.net 💡 문제 풀이 및 해석 탑은 왼쪽에서 오른쪽으로 만들고, 탐색은 오른쪽에서 왼쪽으로 진행된다. 자신보다 크거나 같은 탑을 만나면 더 이상 신호가 왼쪽으로 가지 않는다. 1번과 2번을 종합하면, 오른쪽 탑부터 왼쪽 탑으로 탐색을 해야 하는데, 현재 탑을 기준으로 오른쪽에 있는 탑들의 집합에서 가장 작은 탑보다 작다면, 현재 탑도 집합에 넣어주고, 아니라면 현재 탑의 높이보다 작거나 같은 탑들은 현재 탑에 수신된다고 표시해주면 된다. 종합적으로 in..
🔗 문제 링크 16235번: 나무 재테크 부동산 투자로 억대의 돈을 번 상도는 최근 N×N 크기의 땅을 구매했다. 상도는 손쉬운 땅 관리를 위해 땅을 1×1 크기의 칸으로 나누어 놓았다. 각각의 칸은 (r, c)로 나타내며, r은 가장 위에서부터 www.acmicpc.net 💡 문제 풀이 및 해석 봄 -> 여름 -> 가을 -> 겨울 순으로 구현하면 된다. 다른 점은 없다. 상도의 땅 정보를 받을 수 있는 구조를 struct를 통해 만들어준다. 봄에 양분을 못먹은 나무는 여름에 죽고 양분이 된다. -> 봄과 여름을 연관성있게 코드를 짜면 시간을 단축할 수 있다. 번식할 수 있는 나무는 5의 배수다. -> 5의 배수인 나무만 따로 체크해두면, 모든 나무를 검사할 필요가 없다. (번식한 나무가 죽는 것도 아니..
🔗 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 및 해석 테이블의 모든 정보를 조회해야 하므로 SELECT * 을 해준다. 가장 비싼 식품의 정보라는 조건이 있으므로 WHERE 에서 PRICE의 MAX값을 출력할 수 있도록 조건을 설정해줘야 한다. WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT) PRICE 가 테이블에서 가장큰 PRICE일 때, *을 출력한다. 라는 문구가 완성된다. ⭐️ 정답 코드 및 설명 SELECT * FROM FOOD_PRODUCT WHERE PRICE = ( ..
🔗 문제 링크 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 및 해석 동물의 아이디와 이름, 들어온 날짜 3가지만 조회해주면 되는 간단한 문제다. SELECT ANIMAL_ID, NAME, DATETIME 여기서 DATETIME 은 년,월,일 그리고 이름은 '날짜' 로 바꿔야 하므로 DATE_FORMAT 을 이용해 년,월,일 로 처리해주고 AS '날짜' 로 열의 이름을 '날짜' 로 바꿔준다. ANIMAL_ID 로 정렬해야 하므로 ORDER BY ANIMAL_ID 을 추가해주면 끝난다. ⭐️ 정답 코드 및 설명 SELECT ANIMAL_ID,..
🔗 문제 링크 15683번: 감시 스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감 www.acmicpc.net 💡 문제 풀이 및 해석 CCTV는 최대 8개이다. 모든 경우를 생각하면, 최악의 경우 (4번 CCTV가 64개 있을 때, 실제로는 3방향이니 24보다 많이 작다.) 4^8 (모든 CCTV의 모든 방향 체크) \* 64 (맵의 복사) \* 24 (CCTV가 보는 방향 체크) = 100,663,296이다. bruteforce한 방법으로 찾을 수 있다. 나머지는 문제 조건 그대로 구현해주면 된다. ⭐️ 정답 코드 및 설명 #include #in..
🔗 문제 링크 https://school.programmers.co.kr/learn/courses/30/lessons/59410 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 💡 문제 풀이 및 해석 ANIMAL_TYPE, NAME, SEX_UPON_INTAKE 을 조회하는 문제 이므로 아래 코드를 추가해준다. SELECT ANIMAL_TYPE, NAME, SEX_UPON_INTAKE 정렬 순은 ANIMAL_ID 이므로 아래 코드를 정렬해준다. ORDER BY ANIMAL_ID NAME에서 NULL을 "No name" 으로 바꿔줘야 한다. 따라서 NAME을..
RealTone
'문제풀이' 카테고리의 글 목록 (7 Page)