728x90 수학33 [python] 백준 10974 모든 순열 https://www.acmicpc.net/problem/10974 10974번: 모든 순열 N이 주어졌을 때, 1부터 N까지의 수로 이루어진 순열을 사전순으로 출력하는 프로그램을 작성하시오. www.acmicpc.net 풀이 과정 총 출력 개수는 n! 현재 순열을 출력하고 사전식 수열에서 다음에 나올 수 있는 순열로 정렬하는 방법은 이전 문제에서 푼 적이 있다. https://thought-process-ing.tistory.com/92 [python] 백준 10972 다음 순열 https://www.acmicpc.net/problem/10972 10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. w.. 2023. 1. 9. [python] 백준 10973 이전 순열 https://www.acmicpc.net/problem/10973 10973번: 이전 순열 첫째 줄에 입력으로 주어진 순열의 이전에 오는 순열을 출력한다. 만약, 사전순으로 가장 처음에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net 문제 해결 10972와 반대 문제 https://thought-process-ing.tistory.com/92 [python] 백준 10972 다음 순열 https://www.acmicpc.net/problem/10972 10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net 문 thought-process-ing.tistor.. 2023. 1. 8. [python] 백준 10972 다음 순열 https://www.acmicpc.net/problem/10972 10972번: 다음 순열 첫째 줄에 입력으로 주어진 순열의 다음에 오는 순열을 출력한다. 만약, 사전순으로 마지막에 오는 순열인 경우에는 -1을 출력한다. www.acmicpc.net 문제 해결 다음에 오는 순열을 어떻게 표현할 수 있을지 알아내기 쉽지 않다. 순열을 뒤에서 부터 본다. → 순열의 i번째 수와 i-1번째 수와 비교했을 때 i-1번째 수가 i번째 수보다 작을 때 다시 i-1번째 수와 순열의 마지막 수부터 비교를 해서 i-1번째 수와 j번째 수(i-1 ≤ j)가 처음으로 되는 수와 바꾼다. → i번째 수까지 그대로 출력하고 i+1번째 수부터는 sorted()를 이용하여 가장 작은 수부터 나열 한다. 만약 한 번도 수를 바꾸지.. 2023. 1. 7. [python] 백준 6064 카잉 달력 https://www.acmicpc.net/problem/6064 6064번: 카잉 달력 입력 데이터는 표준 입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터는 한 줄로 구성된다. www.acmicpc.net 문제 해결 x+ M*a = y + N*b 를 만족하는 자연수 a,와 b 가 있어야 정상이다. 만약 존재하지 않는다면 -1 그러면 (x + M*a - y) % N = 0 이 되어야 한다. a는 N 이하이다. N보다 커지면 위의 식( (x + M*a - y) % N)의 나머지가 반복되기 때문에 더 해봤자 존재하지 않는 것이다. CODE import sys input = sys.stdin.readline .. 2023. 1. 3. 이전 1 ··· 5 6 7 8 9 다음 728x90