목록알고리즘 (72)
짱이 될거야
사용언어: Oracle 1. 이름이 없는 동물의 아이디 동물 보호소에 들어온 동물 중, 이름이 없는 채로 들어온 동물의 ID를 조회하는 SQL 문을 작성해주세요. 단, ID는 오름차순 정렬되어야 합니다. SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NULL ORDER BY ANIMAL_ID; 2. 이름이 있는 동물의 아이디 동물 보호소에 들어온 동물 중, 이름이 있는 동물의 ID를 조회하는 SQL 문을 작성해주세요. 단, ID는 오름차순 정렬되어야 합니다. SELECT ANIMAL_ID FROM ANIMAL_INS WHERE NAME IS NOT NULL ORDER BY ANIMAL_ID; 3. NULL 처리하기 입양 게시판에 동물 정보를 게시하려 합니다. 동물의 ..
사용언어: Oracle 1. 고양이와 개는 몇 마리 있을까 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성해주세요. 이때 고양이를 개보다 먼저 조회해주세요. SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) AS "count" FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE; 2. 동명 동물 수 찾기 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회해주세요. SELECT (5순위) FROM (순위) WHERE (2순위) GROUP BY (3순위) ..
사용언어: Oracle 1. 최댓값 구하기 가장 최근에 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요. SELECT MAX(DATETIME) AS "시간" FROM ANIMAL_INS; 2. 최솟값 구하기 동물 보호소에 가장 먼저 들어온 동물은 언제 들어왔는지 조회하는 SQL 문을 작성해주세요. SELECT MIN(DATETIME) AS "시간" FROM ANIMAL_INS; 3. 동물 수 구하기 동물 보호소에 동물이 몇 마리 들어왔는지 조회하는 SQL 문을 작성해주세요. SELECT COUNT(*) AS "count" FROM ANIMAL_INS; 4. 중복 제거하기 동물 보호소에 들어온 동물의 이름은 몇 개인지 조회하는 SQL 문을 작성해주세요. 이때 이름이 NULL인 경우는 집계하..
사용언어: Oracle 1. 모든 레코드 조회하기 동물 보호소에 들어온 모든 동물의 정보를 ANIMAL_ID순으로 조회하는 SQL문을 작성해주세요. SELECT * FROM ANIMAL_INS ORDER BY ANIMAL_ID; 2. 역순 정렬하기 동물 보호소에 들어온 모든 동물의 이름과 보호 시작일을 조회하는 SQL문을 작성해주세요. 이때 결과는 ANIMAL_ID 역순으로 보여주세요. SELECT NAME, DATETIME FROM ANIMAL_INS ORDER BY ANIMAL_ID DESC; 3. 아픈 동물 찾기 동물 보호소에 들어온 동물 중 아픈 동물의 아이디와 이름을 조회하는 SQL 문을 작성해주세요. 이때 결과는 아이디 순으로 조회해주세요. SELECT ANIMAL_ID, NAME FROM A..
https://www.acmicpc.net/problem/4485 4485번: 녹색 옷 입은 애가 젤다지? 젤다의 전설 게임에서 화폐의 단위는 루피(rupee)다. 그런데 간혹 '도둑루피'라 불리는 검정색 루피도 존재하는데, 이걸 획득하면 오히려 소지한 루피가 감소하게 된다! 젤다의 전설 시리즈의 주 www.acmicpc.net 이 문제는 최소 거리를 구하는 알고리즘을 사용하면 된다. 처음에는 dfs를 사용했다. import sys input = sys.stdin.readline # 연산처리 속도 줄이기 위해 def dfs(arr, si, sj, end, tot): global min_value # 종료조건 if tot > min_value: return if (si, sj) == (end, end): ..
https://www.acmicpc.net/problem/1966 1966번: 프린터 큐 여러분도 알다시피 여러분의 프린터 기기는 여러분이 인쇄하고자 하는 문서를 인쇄 명령을 받은 ‘순서대로’, 즉 먼저 요청된 것을 먼저 인쇄한다. 여러 개의 문서가 쌓인다면 Queue 자료구조에 www.acmicpc.net N(1 ≤ N ≤ 100), M(0 ≤ M < N)으로 입력이 크진 않지만 pop()을 써야 하기 때문에 deque를 활용해야 한다. 중요도가 같은 문서가 여러 개 있을 수도 있기 때문에, 중요도 입력 리스트에다가 인덱스를 함께 달아줬다. (lst[i], i)와 같이 튜플 형태로 deque에 넣었다. 문제 해결 방식은 다음과 같다. 인쇄되는 순서는 변수 cnt로 설정하고, 초기값을 0으로 둔다. 먼저..