Replies: 1 comment 3 replies
-
|
이해가 안되는 것 같아요! 그림으로 설명해주세요 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
1759번: 암호 만들기
https://www.acmicpc.net/problem/1759
아이디어
일단 먼저 최소 한개의 모음과 최소 두 개의 자음이라는 조건을 제외하고 생각해보자
조건을 제외하면 서로 다른 C개의 알파벳 소문자들 중 L개를 중복없이 사전순으로 순서있게 나열하는 순열 문제이다.
C개의 알파벳을 먼저 정렬한 후 중복없이 사전순으로 조합을 짜기 위해 prev 인자를 통해 k자리의 다음 자리인 k+1 자리는 prev +1 부터 탐색하도록 설정해서 완전 탐색으로 모든 경우의 수를 구한다.
이제 여기서 완성된 가능한 모든 암호 조합의 모음 개수와 자음 개수를 세서 조건에 맞을 경우에만 출력시켜준다.
아 이거 설명하듯이 풀이를 글로 써볼라니까 어렵네.. 내가 쓴 설명이 무슨 말인지 알아듣는 사람..?
인생 최초 골드문제 풀이없이 혼자 품 😳
시간복잡도
시간 복잡도가 순열의 경우 O(nPm)으로 알고 있는데 N과 M의 최댓값은 15이니까 15! / (15-15)! = 15!이라서 무조건 2초 초과인데
여기선 아마 조건으로 사전순인 경우만 탐색하게 해서 시간복잡도가 많이 줄어든듯..? 확실하진 않음.. 일단 시간 124ms로 빠르게 통과는 함..
Beta Was this translation helpful? Give feedback.
All reactions