Loading...
2022. 10. 12. 01:12

같은 것이 있는 순열(복수순열) 배우기 - 숫자 만들기 -

1. 문제 4008. [모의 SW역량테스트] 숫자 만들기 SW Expert Academy SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 주어진 숫자들 사이에 연산자를 집어넣어 왼쪽부터 오른쪽으로 우선순위를 무시하고 순서대로 계산을 할때, 가능한 계산결과의 최댓값과 최솟값의 차이를 구하시오 2. 같은 것이 있는 순열 배열의 원소들 중에 같은 것이 포함된 복수순열은 어떻게 구현할 수 있을까? 일반 순열을 구현할때는 배열의 j번째 원소를 사용했는지 여부를 나타내는 used를 사용해서 구현을 했는데 def permutation(i,n,r): if i == r: print(p) else: for j in range(n..

2022. 10. 8. 02:20

다이나믹 프로그래밍 연습하기 -수영장-

1. 문제 1952. [모의 SW 역량테스트] 수영장 SW Expert Academy SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1일 이용권, 1달 이용권, 3달 이용권, 1년 이용권을 사용하여 주어진 1월~12월까지 수영장 이용 계획을 최소 비용으로 이용하고 싶을때, 그러한 최소 비용을 찾는 문제 2. 풀이 다이나믹 프로그래밍을 연습할 수 있는 아주 좋은 문제다 dp[i]를 1~i번째 달까지 사용한 최소 요금으로 정의하자 각각의 i번째 달에 사용할 수 있는 경우의 수는 무엇일까? 1) 1일 이용권을 모두 사용하는 경우 예를 들어 3월에 2일 사용했는데, 2일을 1일 이용권 2번으로 사용할 수 있다 2) ..

2022. 10. 5. 01:23

중복된, 비효율적인 연산을 줄이는 연습문제 -요리사-

1. 문제 4012. [모의 SW역량테스트] 요리사 SW Expert Academy SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com N개의 식재료를 N/2개씩 나누어 2개의 요리를 하려고 한다. 각 요리의 맛은 음식을 구성하는 식재료들의 시너지의 합으로 구해진다. 음식의 맛의 차이가 최소가 되는 경우를 찾는다면? 2. 풀이1 순열과 조합을 이용하는 문제가 될텐데 실전 문제에까지 직접 구현해서 사용할 이유는 전혀 없고 from itertools import combinations, permutations를 이용하자 처음에 풀때는 2개의 재료에 대해서는 설명이 명확한데 3개의 재료에 대해서는 시너지를 어떻게 계산하..

2022. 9. 26. 22:37

이동가능한지 많은 것을 고려해야하는 BFS -탈주범 검거-

1. 문제 1953. 모의 sw 역량테스트 탈주범 검거 SW Expert Academy SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 탈주범이 시작 위치에서 터널을 통해 이동할 때, 일정 시간 후에 탈주범이 존재할 수 있는 곳의 개수를 구하는 문제 2. 풀이 어쨌든 성실하게 하나하나 구현하면 되는 문제 전형적인 BFS이지만 이동할 수 있는 조건이 복잡하고 까다로워서 실수할 수도 있는 문제 1) map의 범위를 벗어나는 곳은 이동 불가능 2) map에서 0인 곳은 이동할 수 없다 3) 주어진 터널 방향으로만 이동 가능하다 map에서 1번은 4방향으로 이동 가능하고, 2번은 상,하, 3번은 좌,우,..... 7번..