본문 바로가기

분류 전체보기

(297)
새로운 게임 www.acmicpc.net/problem/17780 17780번: 새로운 게임 재현이는 주변을 살펴보던 중 체스판과 말을 이용해서 새로운 게임을 만들기로 했다. 새로운 게임은 크기가 N×N인 체스판에서 진행되고, 사용하는 말의 개수는 K개이다. 말은 원판모양이고, 하 www.acmicpc.net #include #include using namespace std; struct horse { int x, y, d; bool is_bottom; } h[10]; int N, K; int dx[] = { 0, 0, 0, -1, 1 }; int dy[] = { 0, 1, -1, 0, 0 }; int turn[] = { 0, 2, 1, 4, 3 }; int color[13][13]; vector info[13][..
방문 길이 programmers.co.kr/learn/courses/30/lessons/49994 코딩테스트 연습 - 방문 길이 programmers.co.kr #include #include #include using namespace std; int dx[] = {-1,1,0,0}; //위, 아래, 왼, 오 int dy[] = {0,0,-1,1}; typedef struct{ int x; int y; char way; }loc; //set안에 구조체안됨 , map key 값으로 구조체 안됨, 대신 큐안에는 구조체 들어가도 됨. //set과 map 안에 구조체가 안되므로 pair을 써야함. int solution(string dirs) { int answer = 0; setcheck; int x = 0; int ..
야근지수 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미터이며, 외벽의 몇몇 지점은 추위가 심할 경우 ..
기타리스트 www.acmicpc.net/problem/1495 1495번: 기타리스트 첫째 줄에 N, S, M이 주어진다. (1 ≤ N ≤ 100, 1 ≤ M ≤ 1000, 0 ≤ S ≤ M) 둘째 줄에는 각 곡이 시작하기 전에 줄 수 있는 볼륨의 차이가 주어진다. 이 값은 1보다 크거나 같고, M보다 작거나 같다. www.acmicpc.net #include #include using namespace std; int main() { int v[100]; bool dp[101][1001]; int n, s, m; memset(dp, false, sizeof(dp)); cin >> n >> s >> m; for (int i = 0; i > v[i]; } dp[0][s] = true; ..