본문 바로가기

ps44

[c++][프로그래머스] 양궁대회 프로그래머스 양궁대회 [2022 KAKAO BLIND RECRUITMENT] https://programmers.co.kr/learn/courses/30/lessons/92342 코딩테스트 연습 - 양궁대회 문제 설명 카카오배 양궁대회가 열렸습니다. 라이언은 저번 카카오배 양궁대회 우승자이고 이번 대회에도 결승전까지 올라왔습니다. 결승전 상대는 어피치입니다. 카카오배 양궁대회 운영위원 programmers.co.kr 문제 풀이 라이언은 전 대회 우승자 페널티로 어피치보다 최소 한 발을 더 맞춰야 과녁 점수를 얻을 수 있습니다. 그렇기 때문에 라이언은 어피치보다 높은 점수를 얻기 위해 다음 두 가지 행동을 할 수 있습니다. 어피치보다 한 발 더 맞춘다. 화살을 쏘지 않고 다음 과녁으로 넘어간다. 위의 과정.. 2022. 1. 23.
[c++][프로그래머스] 주차 요금 계산 프로그래머스 주차 요금 계산 [2022 KAKAO BLIND RECRUITMENT] https://programmers.co.kr/learn/courses/30/lessons/92341 코딩테스트 연습 - 주차 요금 계산 [180, 5000, 10, 600] ["05:34 5961 IN", "06:00 0000 IN", "06:34 0000 OUT", "07:59 5961 OUT", "07:59 0148 IN", "18:59 0000 IN", "19:09 0148 OUT", "22:59 5961 IN", "23:00 5961 OUT"] [14600, 34400, 5000] programmers.co.kr 문제 풀이 먼저 각 차량 별로 주차 내역을 map에 담아줍니다. 그 결과는 다음 그림과 같습니다. 그.. 2022. 1. 20.
[c++][프로그래머스] k진수에서 소수 개수 구하기 프로그래머스 k진수에서 소수 개수 구하기 [2022 KAKAO BLIND RECRUITMENT] https://programmers.co.kr/learn/courses/30/lessons/92335 코딩테스트 연습 - k진수에서 소수 개수 구하기 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소 programmers.co.kr 문제 풀이 세 단계를 거쳐 문제 해결 10진수 숫자인 n을 k 진수로 변환 (※ 10진수를 k 진수로 바꾸면 매우 길어질 수 있기 때문에 long long 사용) 변환한 숫자를 0을 기준으로 parsing parsi.. 2022. 1. 20.
[c++][프로그래머스] 신고 결과 받기 프로그래머스 신고 결과 받기 [2022 KAKAO BLIND RECRUITMENT] https://programmers.co.kr/learn/courses/30/lessons/92334 코딩테스트 연습 - 신고 결과 받기 문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의 programmers.co.kr 문제 풀이 문제를 해결하기 위해 두 개의 unordered_map 과 stringstream 을 사용했습니다. 첫 번째 맵은 unordered_map 형태로 각 멤버의 index 를 저장하기 위해 사용 두 번째 맵은 unordered_map 형태로 각 멤버를 신고한 멤버들.. 2022. 1. 20.
[c++][백준 1806] 부분합 문제 (Gold 4) 10,000 이하의 자연수로 이루어진 길이 N짜리 수열이 주어진다. 이 수열에서 연속된 수들의 부분합 중에 그 합이 S 이상이 되는 것 중, 가장 짧은 것의 길이를 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다. 출력 첫째 줄에 구하고자 하는 최소의 길이를 출력한다. 만일 그러한 합을 만드는 것이 불가능하다면 0을 출력하면 된다. 문제 풀이 이 문제는 투 포인터 알고리즘을 사용하여 해결하는 문제이다. 입력을 받으면서 r 을 오른쪽으로 이동시키고, 만약 l과 r 사이의 합이 S 이상이라면.. 2022. 1. 20.
[c++][백준 1700] 멀티탭 스케줄링 문제 (Gold 1) 기숙사에서 살고 있는 준규는 한 개의 멀티탭을 이용하고 있다. 준규는 키보드, 헤어드라이기, 핸드폰 충전기, 디지털 카메라 충전기 등 여러 개의 전기용품을 사용하면서 어쩔 수 없이 각종 전기용품의 플러그를 뺐다 꽂았다 하는 불편함을 겪고 있다. 그래서 준규는 자신의 생활 패턴을 분석하여, 자기가 사용하고 있는 전기용품의 사용순서를 알아내었고, 이를 기반으로 플러그를 빼는 횟수를 최소화하는 방법을 고안하여 보다 쾌적한 생활환경을 만들려고 한다. 예를 들어 3 구(구멍이 세 개 달린) 멀티탭을 쓸 때, 전기용품의 사용 순서가 아래와 같이 주어진다면, 키보드 헤어드라이기 핸드폰 충전기 디지털 카메라 충전기 키보드 헤어드라이기 키보드, 헤어드라이기, 핸드폰 충전기의 플러그를 순서대로 멀티탭.. 2022. 1. 19.