중화사전망 - 자전 검색 - ACM 알고리즘은 매우 어려운 문제입니다.
ACM 알고리즘은 매우 어려운 문제입니다.
더 좋은 설명은 n 을 입력하여 n 번째 조합 (0 번째 조합부터 0, 1, 2,3,4,5) 을 출력하는 것입니다. 여기서 6 개 항목은 0 에서 32 까지 사전 순서로 정렬됩니다.
이것은 어려운 문제가 아니라 엔트리급 문제이다.
첫 번째 K 항목이 주어지면 (K 항목이 M 이라는 것을 기억하십시오), 나머지 * * * 항목은 C(32-m, 6-k) 입니다. 여기서 C(x, Y) 는 X 와 Y 의 조합 수를 나타내며 이에 따라 프로그래밍할 수 있습니다.
예를 하나 들어 드리겠습니다.
# 포함? & ltstdio.h & gt
Int? Binom(int? N,? Int? M)
{
Int? 나? C? =? 1;
만약? (2*m? & gt? N)
N? =? N-m;
뭐 때문에? 나? =? 1; -응? 나? & lt=? M; -응? I++)
C? =? C * (n+1-I)/I;
반환? C;
}
Int? 주 ()
{
Int? 나? N;
Int? 답 [6]? =? {- 1};
언제? (scanf("%d ",& ampn)? ! =? EOF) 를 참조하십시오
{
N++;+;
만약? (n? & lt=? 0? | |? N? & gt? 비넘 (33,? 6)) 을 참조하십시오
{
Printf ("유효하지 않습니까? Input \ n ");
계속;
}
뭐 때문에? 나? =? 1; -응? 나? & lt=? 5; -응? I++)
{
뭐 때문에? 갑 [나]? =? A[i- 1]? +? 1; -응? 을 눌러 섹션을 인쇄할 수도 있습니다 -응? A[i]++)
{
Int? T? =? 비넘 (32? -응? 하나 [나],? 6? -응? I);
만약? (n? & gt? T)
N? -=? T;
기타
깨뜨리다
}
Printf("%d ",a [I]);
}
Printf("%d\n ",A[i- 1]? +? N);
}
반환? 0;
}
- 관련 기사