분류 전체보기 19

[백준]14503번 로봇 청소기 (Python/파이썬)

1. 문제 설명로봇 청소기와 방의 상태가 주어졌을 때, 청소하는 영역의 개수를 구하는 프로그램을 작성하시오.로봇 청소기가 있는 방은 𝑁×𝑀 크기의 직사각형으로 나타낼 수 있으며, 1×1 크기의 정사각형 칸으로 나누어져 있다. 각각의 칸은 벽 또는 빈 칸이다. 청소기는 바라보는 방향이 있으며, 이 방향은 동, 서, 남, 북 중 하나이다. 방의 각 칸은 좌표 (𝑟,𝑐)로 나타낼 수 있고, 가장 북쪽 줄의 가장 서쪽 칸의 좌표가 (0,0) 가장 남쪽 줄의 가장 동쪽 칸의 좌표가 (𝑁−1,𝑀−1)이다. 즉, 좌표 (𝑟,𝑐)는 북쪽에서 (𝑟+1)번째에 있는 줄의 서쪽에서 (𝑐+1)번째 칸을 가리킨다. 처음에 빈 칸은 전부 청소되지 않은 상태이다.로봇 청소기는 다음과 같이 작동한다. 📌 로봇 청..

[백준]9205번 맥주 마시면서 걸어가기 (Python/파이썬)

1. 문제 설명송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. 맥주 한 박스에는 맥주가 20개 들어있다. 목이 마르면 안되기 때문에 50미터에 한 병씩 마시려고 한다. 즉, 50미터를 가려면 그 직전에 맥주 한 병을 마셔야 한다. 상근이의 집에서 페스티벌이 열리는 곳은 매우 먼 거리이다. 따라서, 맥주를 더 구매해야 할 수도 있다. 미리 인터넷으로 조사를 해보니 다행히도 맥주를 파는 편의점이 있다. 편의점에 들렸을 때, 빈 병은 버리고 새 맥주 병을 살 수 있다. 하지만, 박스에 들어있는 맥주는 20병을 넘을 수 없다. 편의점을 나선 직후에도 50미터를 가기 전에 맥..

[취준] 2024 상반기 현대캐피탈 Data Scientist 과제 테스트 후기

1. 현대캐피탈 2024 상반기 공채 일정 현대캐피탈의 상반기 공채 일정은 다음과 같습니다.서류 제출 4/3~4/15 서류 결과 발표 4/29 코딩테스트(과제테스트) 5/4 코딩테스트 결과 발표 5/8인적성 검사(예정) 5/18면접(예정) 6월 초트라이얼 위크(예정) 6/19~6/21최종입사 7월 중상반기 18개 지원 가운데 삼성전자를 제외하고는 직무 적합성 평가(서류)에서 연이어 탈락하고 있었는데, 코딩테스트를 볼 기회가 생겨 너무 기뻤습니다😊 제가 지원한 Data Scientist(리스크 모델링) 직무는 알고리즘 문제가 나오는 코딩 테스트를 보는 게 아니고, 데이터 처리와 분석(예측) 관련 문제가 나오는 과제 테스트를 봅니다! 시험 문제에 대해 언급하지는 못하지만 준비한 기간과 준비 방법에 대해 정..

취준일기 2024.05.08

[프로그래머스]없어진 기록 찾기 (MySQL/Lv. 3)

1. 문제1) 문제 설명ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_IDVARCHAR(N)FALSEANIMAL_TYPEVARCHAR(N)FALSEDATETIMEDATETIMEFALSEINTAKE_CONDITIONVARCHAR(N)FALSENAMEVARCHAR(N)TRUESEX_UPON_INTAKEVARCHAR(N)FALSE A..

코딩테스트/SQL 2024.04.27

[프로그래머스]상품을 구매한 회원 비율 구하기 (MySQL/Lv. 5)

1. 문제1) 문제 설명다음은 어느 의류 쇼핑몰에 가입한 회원 정보를 담은 USER_INFO 테이블과 온라인 상품 판매 정보를 담은 ONLINE_SALE 테이블 입니다. USER_INFO 테이블은 아래와 같은 구조로 되어 있으며 USER_ID, GENDER, AGE, JOINED는 각각 회원 ID, 성별, 나이, 가입일을 나타냅니다.Column nameTypeNullableUSER_IDINTEGERFALSEGENDERTINYINT(1)TRUEAGEINTEGERTRUEJOINEDDATEFALSE GENDER 컬럼은 비어있거나 0 또는 1의 값을 가지며 0인 경우 남자를, 1인 경우는 여자를 나타냅니다. ONLINE_SALE 테이블은 아래와 같은 구조로 되어있으며 ONLINE_SALE_ID, USER_ID,..

코딩테스트/SQL 2024.04.27

[프로그래머스]재구매가 일어난 상품과 회원 리스트 구하기 (MySQL/Lv. 2)

1. 문제ONLINE_SALE 테이블에서 동일한 회원이 동일한 상품을 재구매한 데이터를 구하여, 재구매한 회원 ID와 재구매한 상품 ID를 출력하는 SQL문을 작성해주세요. 결과는 회원 ID를 기준으로 오름차순 정렬해주시고 회원 ID가 같다면 상품 ID를 기준으로 내림차순 정렬해주세요. 2. 출력 예시 3. 코드SELECT USER_ID, PRODUCT_IDFROM ONLINE_SALEGROUP BY USER_ID, PRODUCT_IDHAVING COUNT(*) > 1ORDER BY USER_ID, PRODUCT_ID DESC 1) GROUP BY (칼럼 이름)칼럼 이름을 기준으로, 건수(COUNT), 평균(AVG), 합계(SUM) 등의 데이터를 추출할 때 사용한다.칼럼을 여러 개 지정할 수 있으며, H..

코딩테스트/SQL 2024.04.26

[프로그래머스]평균 일일 대여 요금 구하기 (MySQL/Lv. 1)

1. 문제CAR_RENTAL_COMPANY_CAR 테이블에서 자동차 종류가 'SUV'인 자동차들의 평균 일일 대여 요금을 출력하는 SQL문을 작성해주세요. 이때 평균 일일 대여 요금은 소수 첫 번째 자리에서 반올림하고, 컬럼명은 AVERAGE_FEE 로 지정해주세요. 2. 코드SELECT ROUND(AVG(DAILY_FEE), 0) AS AVERAGE_FEEFROM CAR_RENTAL_COMPANY_CARWHERE CAR_TYPE="SUV" 1) ROUND(숫자 or 칼럼 이름, 자릿수)숫자를 반올림해 가상 테이블로 출력하려는 경우칼럼의 레코드 데이터 검색 결과를 일괄 반올림해 결과를 조회하려는 경우위 두가지 경우에 사용 가능한 함수이다.자릿수가 N인 경우, 소수점 아래 N째 자리까지 반올림하여 표시한다..

코딩테스트/SQL 2024.04.26

[백준]2573번 빙산 (Python/파이썬)

1. 문제지구 온난화로 인하여 북극의 빙산이 녹고 있다. 빙산을 그림 1과 같이 2차원 배열에 표시한다고 하자. 빙산의 각 부분별 높이 정보는 배열의 각 칸에 양의 정수로 저장된다. 빙산 이외의 바다에 해당되는 칸에는 0이 저장된다. 그림 1에서 빈칸은 모두 0으로 채워져 있다고 생각한다.  빙산의 높이는 바닷물에 많이 접해있는 부분에서 더 빨리 줄어들기 때문에, 배열에서 빙산의 각 부분에 해당되는 칸에 있는 높이는 일년마다 그 칸에 동서남북 네 방향으로 붙어있는 0이 저장된 칸의 개수만큼 줄어든다. 단, 각 칸에 저장된 높이는 0보다 더 줄어들지 않는다. 바닷물은 호수처럼 빙산에 둘러싸여 있을 수도 있다. 따라서 그림 1의 빙산은 일년후에 그림 2와 같이 변형된다.   그림 3은 그림 1..

[백준]2468번 안전 영역 (Python/파이썬) - 시간 초과 해결

1. 문제재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 안전한 영역이 최대로 몇 개가 만들어 지는 지를 조사하려고 한다. 이때, 문제를 간단하게 하기 위하여, 장마철에 내리는 비의 양에 따라 일정한 높이 이하의 모든 지점은 물에 잠긴다고 가정한다. 어떤 지역의 높이 정보는 행과 열의 크기가 각각 N인 2차원 배열 형태로 주어지며 배열의 각 원소는 해당 지점의 높이를 표시하는 자연수이다. 예를 들어, 다음은 N=5인 지역의 높이 정보이다. 이제 위와 같은 지역에 많은 비가 내려서 높이가 4 이하인 모든 지점이 물에 잠겼다고 하자. 이 경우에 물에 잠기는 지점을..

[백준]5014번 스타트링크 (Python/파이썬)

1. 문제강호는 코딩 교육을 하는 스타트업 스타트링크에 지원했다. 오늘은 강호의 면접날이다. 하지만, 늦잠을 잔 강호는 스타트링크가 있는 건물에 늦게 도착하고 말았다. 스타트링크는 총 F층으로 이루어진 고층 건물에 사무실이 있고, 스타트링크가 있는 곳의 위치는 G층이다. 강호가 지금 있는 곳은 S층이고, 이제 엘리베이터를 타고 G층으로 이동하려고 한다. 보통 엘리베이터에는 어떤 층으로 이동할 수 있는 버튼이 있지만, 강호가 탄 엘리베이터는 버튼이 2개밖에 없다. U버튼은 위로 U층을 가는 버튼, D버튼은 아래로 D층을 가는 버튼이다. (만약, U층 위, 또는 D층 아래에 해당하는 층이 없을 때는, 엘리베이터는 움직이지 않는다) 🎈 전체 F 사이즈의 배열에서 시작 노드인 S에서 도착 노드인 G까지의..