본문 바로가기

프로그래머스

(110)
야근지수 programmers.co.kr/learn/courses/30/lessons/12927 코딩테스트 연습 - 야근 지수 회사원 Demi는 가끔은 야근을 하는데요, 야근을 하면 야근 피로도가 쌓입니다. 야근 피로도는 야근을 시작한 시점에서 남은 일의 작업량을 제곱하여 더한 값입니다. Demi는 N시간 동안 야근 피로도 programmers.co.kr #include #include #include #include using namespace std; bool cmp(long long a, long long b){ return a>b; } long long solution(int n, vector works) { long long answer = 0; vectorv(n+1); long long total =0..
불량 사용자 programmers.co.kr/learn/courses/30/lessons/64064 코딩테스트 연습 - 불량 사용자 개발팀 내에서 이벤트 개발을 담당하고 있는 무지는 최근 진행된 카카오이모티콘 이벤트에 비정상적인 방법으로 당첨을 시도한 응모자들을 발견하였습니다. 이런 응모자들을 따로 모아 불량 programmers.co.kr import java.util.*; import java.util.regex.Pattern; //정규식 사용하기 위한 라이브러리 추가 class Solution { ArrayListbidList = new ArrayList(); HashSet result = new HashSet(); ArrayList findbidList(String bid, String[] user_id){ ..
거스름돈 programmers.co.kr/learn/courses/30/lessons/12907 코딩테스트 연습 - 거스름돈 Finn은 편의점에서 야간 아르바이트를 하고 있습니다. 야간에 손님이 너무 없어 심심한 Finn은 손님들께 거스름돈을 n 원을 줄 때 방법의 경우의 수를 구하기로 하였습니다. 예를 들어서 손님께 5 programmers.co.kr #include #include using namespace std; long long d[111111]; int solution(int n, vector money) { int answer = 0; d[0] = 1; // for (int i=money[0] ; i
광고삽입 programmers.co.kr/learn/courses/30/lessons/72414 코딩테스트 연습 - 광고 삽입 시간을 나타내는 HH, H1, H2의 범위는 00~99, 분을 나타내는 MM, M1, M2의 범위는 00~59, 초를 나타내는 SS, S1, S2의 범위는 00~59까지 사용됩니다. 잘못된 시각은 입력으로 주어지지 않습니다. (예: 04:60:24, 11 programmers.co.kr 처음 풀이: 이렇게 했더니 시간초과가 나고 틀렸다고 나온다. 시간 초과가 나온다는 것 자체가 다른 알고리즘을 요하는 것 같아서 누적합로 풀어야 함을 알게 되었다. #include #include #include #include #include using namespace std; int tosecond(s..
외벽 점검 programmers.co.kr/learn/courses/30/lessons/60062 코딩테스트 연습 - 외벽 점검 레스토랑을 운영하고 있는 스카피는 레스토랑 내부가 너무 낡아 친구들과 함께 직접 리모델링 하기로 했습니다. 레스토랑이 있는 곳은 스노우타운으로 매우 추운 지역이어서 내부 공사를 하는 programmers.co.kr 외벽 점검 문제 설명 레스토랑을 운영하고 있는 "스카피"는 레스토랑 내부가 너무 낡아 친구들과 함께 직접 리모델링 하기로 했습니다. 레스토랑이 있는 곳은 스노우타운으로 매우 추운 지역이어서 내부 공사를 하는 도중에 주기적으로 외벽의 상태를 점검해야 할 필요가 있습니다. 레스토랑의 구조는 완전히 동그란 모양이고 외벽의 총 둘레는 n미터이며, 외벽의 몇몇 지점은 추위가 심할 경우 ..
베스트 앨범 programmers.co.kr/learn/courses/30/lessons/42579 코딩테스트 연습 - 베스트앨범 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 programmers.co.kr #include #include #include #include #include using namespace std; bool cmp(paira, pairb){ return a.first>b.first; } bool cmpplays(paira, pairb){ return a.second>b.second; } vector solution(vector genres, vector..
보행자 천국 programmers.co.kr/learn/courses/30/lessons/1832 코딩테스트 연습 - 보행자 천국 3 3 [[0, 0, 0], [0, 0, 0], [0, 0, 0]] 6 3 6 [[0, 2, 0, 0, 0, 2], [0, 0, 2, 0, 1, 0], [1, 0, 0, 2, 2, 0]] 2 programmers.co.kr 처음에는 밑에와 같이 DFS로 풀었더니 시간초과가 났다 그때서야 이문제가 DFS로 푸는 문제가 아니라는 것을 알게 되었다 #include #include #include using namespace std; int MOD = 20170805; int dx[] = {1,0}; //아래 int dy[] = {0,1}; //오른쪽 int count; void dfs(vect..
블록이동하기 programmers.co.kr/learn/courses/30/lessons/60063 코딩테스트 연습 - 블록 이동하기 [[0, 0, 0, 1, 1],[0, 0, 0, 1, 0],[0, 1, 0, 1, 1],[1, 1, 0, 0, 1],[0, 0, 0, 0, 0]] 7 programmers.co.kr 아직 미해결 해결중입니다.. #include #include #include #include #include #include #include using namespace std; typedef struct loc{ int x1; int y1; int x2; int y2; } loc; int dx[] = {-1,1,1,-1}; int dy[] = {1,1,-1,-1}; int dlx[] = {-1,-1,1,..