본문 바로가기
📊 Algorithm/Algorithm plus+

🌳 클래스 5 🌳 밀기

by 정람지 2024. 1. 28.

목표는 11문제

레벨순으로 쉬운 것만 공략한다

가오란 없다

 

사실 진짜 속셈은 플래티넘 진입을 위한 클래스 꿀점수

이번 방학까지는 꼭


1 / 11

 

27172번: 수 나누기 게임

《보드게임컵》을 준비하다 지친 은하는 보드게임컵 참가자들을 경기장에 몰아넣고 결투를 시키는 게임 《수 나누기 게임》을 만들었습니다. 《수 나누기 게임》의 규칙은 다음과 같습니다.

www.acmicpc.net

난 항상 파워브루트브루트포스로밖에 코드를 짤 줄 모른다..

O(N^2)  10000000000 음 1초 어림도없고

바로 폐기

 

으음... 소수..에라씨의 체,,

1은 항상 N-1이고

소수면 (1이 아닌)상대방이 지거나 무승부

이해 못했었군

체 으악

감사합니다 황태자님


2 / 11

 

1647번: 도시 분할 계획

첫째 줄에 집의 개수 N, 길의 개수 M이 주어진다. N은 2이상 100,000이하인 정수이고, M은 1이상 1,000,000이하인 정수이다. 그 다음 줄부터 M줄에 걸쳐 길의 정보가 A B C 세 개의 정수로 주어지는데 A번

www.acmicpc.net

N노드 M 에지

양방향 그래프

가중치 그래프

 

마을은 집이 하나 이상

마을 내는 완전 그래프

가 아니고 각 노드마다 서로 연결되는 경로가 있기만 하면 됨

 

최소 신장 트리 아닙니까

최소 비용으로 구한 후에 제일 값이 큰 간선 하나 더 삭제하면 되겠다~!

.

.

항상 쉽게 되는 게 없고..

 

대체 왜 런타임에러 

어떤 런타임에러인지만이라도알려주세요

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ감동

왜 PriorityQueue를 쓰면 안 되지??????

정말고맙단다 겨자씨


3 / 11

 

1005번: ACM Craft

첫째 줄에는 테스트케이스의 개수 T가 주어진다. 각 테스트 케이스는 다음과 같이 주어진다. 첫째 줄에 건물의 개수 N과 건물간의 건설순서 규칙의 총 개수 K이 주어진다. (건물의 번호는 1번부

www.acmicpc.net

 

위상정렬 문제다.

위상정렬 : 진입차수가 0인 친구들을 큐에 넣고 돌리기 

하나의 노드가 처리될 때마다 그래프 간선 삭제 

진입차수가 0이 된 노드를 큐에 넣기

롤롤

 

 

 

비대면 + 200-300(공간+풍선+

하하 재밋는신촌

효율은 제로

히ㅏ하


4 / 11

 

1644번: 소수의 연속합

첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 4,000,000)

www.acmicpc.net

오 뭐냐

사실 알고리즘 분류 보긴 했지만

깊은 생각 없이 1트 성공~


5 / 11

 

2239번: 스도쿠

스도쿠는 매우 간단한 숫자 퍼즐이다. 9×9 크기의 보드가 있을 때, 각 행과 각 열, 그리고 9개의 3×3 크기의 보드에 1부터 9까지의 숫자가 중복 없이 나타나도록 보드를 채우면 된다. 예를 들어 다

www.acmicpc.net

구현

구현

구현

헷갈

 

꼭 근접한 거 차례로 할 필요가 없음!

 (범위체크생략을위해서 처음에 0위치 저장 후 순서대로만 해도 됨)

 

미리 가능숫자데이터 담아놓고 -> 갱신보다

매번 체크하는 게 더 구현이 쉬웡

진ㅉ

recursion 늘리는 거 자체만으로 (!!그 깊이까지 안 가도

메모리 초과가 난다!!!

키파님도 도와주셧다

wow

.

.

키파 언니라고 부를 수 있게 됐다

ㅎㅎ


6 / 11

 

1806번: 부분합

첫째 줄에 N (10 ≤ N < 100,000)과 S (0 < S ≤ 100,000,000)가 주어진다. 둘째 줄에는 수열이 주어진다. 수열의 각 원소는 공백으로 구분되어져 있으며, 10,000이하의 자연수이다.

www.acmicpc.net

sksms ro ajdcjddlek

dkvdmfhxnvhdlsxjfmfdhkswjswjdqhrgksek


7 / 11

 

2467번: 용액

첫째 줄에는 전체 용액의 수 N이 입력된다. N은 2 이상 100,000 이하의 정수이다. 둘째 줄에는 용액의 특성값을 나타내는 N개의 정수가 빈칸을 사이에 두고 오름차순으로 입력되며, 이 수들은 모두 -

www.acmicpc.net

꼭 두 개 혼합해서 0에 제일 가까운 용액 만들

1초니깐..1억번정도고

N이 100,000이고

엔제곱안되고

엔로그앤

 

정렬된채로주는구나

 

일단 N번

모든 원소 하나씩에 대해

로그N 

이분탐색을 실시 

 

 

으아으 매번 해당 tn QOduaus 

 

해당 값이 0보다 크면 왼쪽으로

0보다 작으면 오른쪽으로 

 

이제 mid값이 타겟이랑 겹치는것만해결되게 

잘 구현하면된

 

굿!

 


8 / 11

 

10942번: 팰린드롬?

총 M개의 줄에 걸쳐 홍준이의 질문에 대한 명우의 답을 입력으로 주어진 순서에 따라서 출력한다. 팰린드롬인 경우에는 1, 아닌 경우에는 0을 출력한다.

www.acmicpc.net

1000문제 푸느라 소홀했다...

DP 너무 어려워...이번 알고리즘 캠프 중급 강의가 태윤님 DP였는데 녹화강의 제대로 다시 봐봐야겠다

 

 

- 숫자가 한 개일 때는 무조건 팰린드롬

- 숫자가 두 개일 때는 숫자가 같아야 팰린드롬

- 숫자 세 개부터 : 양쪽 끝 두 숫자가 같은지 확인 + 그 가운데의 값이 팰린드롬인지 확인

 

점화식 세워서 업데이트

 


9 / 11

 

20040번: 사이클 게임

사이클 게임은 두 명의 플레이어가 차례대로 돌아가며 진행하는 게임으로, 선 플레이어가 홀수 번째 차례를, 후 플레이어가 짝수 번째 차례를 진행한다. 게임 시작 시 0 부터 n − 1 까지 고유한

www.acmicpc.net

일산투어를 햇다

일산은,,,멀다

 

유니온 파인드 쓰면 되는 것 아닌가?

부모가 같은 거

아씽.....

재귀 깊이 늘리면 메모리 초과나고

조금 줄이면 런타임에러나고

늘 

77퍼 테스트케이스 뭐냐

 

C++로 바꾸니까 바로 맞네;;;;;;

화난다


10 / 11

 

17404번: RGB거리 2

첫째 줄에 집의 수 N(2 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 각 집을 빨강, 초록, 파랑으로 칠하는 비용이 1번 집부터 한 줄에 하나씩 주어진다. 집을 칠하는 비용은 1,000보다 작거나

www.acmicpc.net

- 양 옆 집 색깔과 달라야 함

+ 원처럼 맨 끝에 두 개는 서로 달라야 함

 

저 플러스 조건이 기존 1번 문제와 다른 점이다.

 

진짜

어려운데

 

- 1번 집이 각각 RGB 중 하나로 시작하게 고정해 놓고 ( 나머지 애들 INF로 두고) 맨 마지막 집 중 해당 색깔 뺸 두 개 중 작은 것 고르기


11 / 11

 

4386번: 별자리 만들기

도현이는 우주의 신이다. 이제 도현이는 아무렇게나 널브러져 있는 n개의 별들을 이어서 별자리를 하나 만들 것이다. 별자리의 조건은 다음과 같다. 별자리를 이루는 선은 서로 다른 두 별을 일

www.acmicpc.net

 

- 음 그러니깐

- 각 점에서 다른 점들에 대한 거리를 다 구하고

- 크루스칼 알고리즘 써서

풀면대겟구나


하하

맛있는 레이팅 50이여 내게 오라

 

14.....

나 남았다니

휴.....

골5 14문제라니......