낙 곡 P1118 [USACO06FEB] 디지털 삼각형 뒤로 Digit Su...
3 1 2 4
4 3 6
7 9
16
Behind FJ’s back, the cows have started playing a more difficult game, in which they try to determine the starting sequence from only the final total and the number N. Unfortunately,game is a bit above FJ 's mental arithmetic capabilities. Write a program to help FJ play the game and keep up with the cows. 1 ~ N 의 배열 a [i] 를 쓰 고 매번 인접 한 두 개의 수 를 더 해 새로운 서열 을 구성 한 다음 에 새로운 서열 을 이렇게 조작 합 니 다.분명히 매번 구 성 된 서열 은 지난번 의 서열 보다 길이 가 1 이 적 고 숫자 위치 만 남 을 때 까지 적 었 다.다음은 하나의 예 다. 3, 1, 2, 4, 3, 6, 7, 9, 16. 마지막 으로 16 이라는 숫자 를 얻 었 다.지금 은 거꾸로 게임 을 하고 싶 습 니 다. N 을 알 고 마지막 으로 얻 은 숫자의 크기 sum 을 알 고 있다 면 최초의 서열 a [i] 를 구 해 1 ~ N 의 배열 을 구 해 주세요.답 이 여러 가지 가능 하 다 면 사전 순서 가 가장 작은 것 을 출력 합 니 다.[color = red] 관리자 주석: 이 문제 의 설명 이 잘못 되 었 습 니 다. 여기 사전 순 서 는 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 가 아니 라 1, 10, 11, 12, 2, 3, 4, 5, 6, 7, 8, 9 [/ color] 입 출력 형식 입력 형식 입 니 다. 두 개의 정수 n, sum.출력 형식: 출력 은 사전 순서 가 가장 작은 줄 을 포함 합 니 다.풀 리 지 않 을 때 는 아무것도 출력 하지 마 세 요.(신기 하 다), 입 출력 사례 입력 사례 \ # 1: 4 16 출력 사례 \ # 1: 3 1 2 4 설명 40% 의 데이터, n ≤ 7;80% 의 데이터 에 대해 n ≤ 10;100% 의 데이터 에 대해 n ≤ 12, sum ≤ 12345.
/*
a,b,c,d.,,,,,,
n 4, sum 1a+3b+3c+1d
n 5, sum 1a+4b+6c+4d+1e
n 6, sum 1a+5b+10c+10d+5e+1f
*/
#include
#include
#include
#include
using namespace std;
int n, Sum ,C[20][20],a[14];
bool used[14];
void DFS(int step,int s){
if(s > Sum) return;
if(step == n + 1){
if(s == Sum){
for(int i=1; i<=n; ++i) printf("%d ",a[i]);
exit(0);
}
return ;
}
for(int i=1; i<=n; ++i)
if(!used[i]){
a[step] = i;
s += C[n][step] * i;
used[i] = true;
DFS(step + 1,s) ;
used[i] = false;
s -= C[n][step] * i;
}
}
int main(int argc,char *argv[]){
scanf("%d%d", &n ,&Sum);
C[1][1] = 1;
for(int i=2; i<=n; ++i)
for(int j=1; j<=i; ++j)
C[i][j] = C[i - 1][j] + C[i - 1][j - 1];
DFS(1,0);
return 0;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[POI 2010] PIL - Pilots (BZOJ 2096)단조 로 운 대열 낙 곡 제목 전송 문 BZOJ 제목 전송 문 물 을 젓다 두 바늘 로 밀어 서 단조 로 운 대기 열 유지 최대 최소 값 입 니 다. 코드:...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.