SDUT 1263 자연 분할 반복

자연수의 분할 문제


Time Limit: 1000ms Memory limit: 65536K여기를 누르세요^_^

제목 설명


자연수 n을 입력한 후에 그것을 몇 개의 수에 덧붙이는 형식으로 나누어 덧셈 연산에 참여하는 수는 중복될 수 있다.

입력


분할할 자연수 n을 나타내는 정수 n만 입력합니다.

출력


출력 예시!

예제 입력

7

예제 출력

1+6
1+1+5
1+1+1+4
1+1+1+1+3
1+1+1+1+1+2
1+1+1+1+1+1+1
1+1+1+2+2
1+1+2+3
1+2+4
1+2+2+2
1+3+3
2+5
2+2+3
3+4
#include
using namespace std;
int a[10000];
int print(int n)
{
    for(int i=1; i<=n; i++)
    {
        if(i!=1)
            printf("+");
        printf("%d",a[i]);
    }
    printf("
"); } int DFS(int n,int ans) //ans , , { for(int i=1; i<=n/2; i++) // { if(i>=a[ans-1]) // { a[ans]=i; a[ans+1]=n-i; print(ans+1); DFS(n-i,ans+1); } } } int main() { int n; while(~scanf("%d",&n)) { a[0]=0; DFS(n,1); } }

..num는 표현식이 얼마나 되는지 나타낸다
#include
using namespace std;
int k=0;
int  num=0;
int DFS(int x,int y,int ans)
{
    if(x

좋은 웹페이지 즐겨찾기