이코테-그리디(실전)

Opusdeisong·2023년 10월 1일
0

이코테-실전

목록 보기
1/1

문제에 대해서 작성하기에 앞서서 스포를 방지하기 위해서 최대한 발상 위주로만 작성해서 문항들을 정리하려고 한다.

모험가 길드

  1. 최대한 많은 그룹을 보내려고 하는 것이기 때문에 작은수부터 갯수대로 보내면 된다.
  2. 작은 수를 위해서 받은 리스트를 정렬한 다음 arr에 대해서 전부 돌면서 그룹이 생길때마다 초기화를 진행하면 된다.

곱하기 혹은 더하기

  1. 덧셈이 곱셈보다 유의미한 상황은 둘 중 하나라도 0이나 1인 경우에만 더 유의미하다.
  2. 조건식으로 왼쪽부터 확인해주면서 0이나 1이 하나라도 존재하는 경우에는 더하고 그 외의 경우에는 모두 곱해주면 된다,

문자열 뒤집기

  1. 이 문항이 솔직히 왜 그리디인지는 모르겠지만 기존에 내가 출제에 관여했던 BOJ.29812의 쉬운 버젼이라는 생각이 든다.
  2. 두 가지 방향성을 모두 확인한 후 그 중 작은 것을 선택하면 된다.

만들 수 없는 금액

  1. 사실 뭔가 요즘 자주 사용되는(코포에서 많이 당했다.ㅜ) 조합론쪽 내용을 사용하면 쉽게 해결되지만 그건 과한 해결방법이라는 생각이 들었다. 사실 이거 1000개나 주어지면 좀 쉽지 않아보이긴 한다.
  2. 간단하게 생각해보기로 하였다. 1부터 하나하나 있는지 확인하는 방법을 사용해보기로 하였다.
  3. 1부터 확인하는 과정중에서 리스트를 정렬하는 과정이 매우 중요하다. 리스트를 정렬하고 나면 예시의 11239에 대해서
    a. 1로 1을 만들고
    b. 1에다가 1을 더해서 2를 만들고
    c. 기존의 2에다가 2를 더해서 4를 만들고(3은 기존의 것을 통해서 만들 수 있음이 증명된거나 마찬가지다.)
    d. 계속해서 이 순서대로 더하다가 원소안의 수가 밖의 수보다 작아지면 그 수를 만들 수 없는 것이니 출력한다.

말이 좀 횡설수설하지만 대충 저 방식대로 풀면 맞다...ㅎㅎ;;

볼링공 고르기

  1. 수능 공부할 때 많이 풀던 확통 문제가 생각나는 문제였다.
  2. 그냥 단순하게 한 사람을 기준으로 다른 공의 갯수를 기준으로 가능한 경우의수를 더하면 되어서 아주 간단하게 해결할 수 있다.
profile
Dorsum curvatum facit informaticum.

0개의 댓글