Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

暴力搜索没错!0ms就是这样诞生的。(附保证不ac的代码)

Posted by fanhqme at 2008-10-01 17:00:49 on Problem 3187
In Reply To:有没搞错,这什么DP.....还是暴力有效 Posted by:cx19860824 at 2007-03-27 10:19:42
int weights[10],N,P,res[10],used[11];
int f(int id,int now)
{
    if (id==N && now==0)return 1;
    if ((id==N && now!=0) || now<0)return 0;
    for (int i=1;i<=N;i++)if (used[i]==0){
        used[res[id]=i]=1;
        if (f(id+1,now-i*weights[id]))return 1;
        used[i]=0;
    }
    return 0;
}
int main()
{
    scanf("%d %d",&N,&P);
    for (int i=0;i<N;i++){
        weights[i]=1;
        for (int j=i-1;j>0;j--)weights[j]+=weights[j-1];
    }
    memset(used,0,sizeof(used));
    f(0,P);
    for (int i=0;i<N;i++)printf((i==N-1)?"%d\n":"%d ",res[i]);
}


Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator