票价5毛,上车的m人有带5毛的,有n人带1元的,求上车方案

来源:互联网 发布:windows 用户态内核态 编辑:程序博客网 时间:2024/04/28 13:11

 

public class Test3{static int kinds=0,sum=0;static int c[]=new int[10000];static int len=0;public static void main(String[] args){int m=5,n=3;len=m+n;if(m<n)  System.out.println("no");dfs(1,m,n);System.out.println("kinds:"+kinds);}public static void dfs(int start,int m,int n){if(start==(len+1)){kinds++;//for(int i=1;i<start;i++)//System.out.print(" "+c[i]);//System.out.println();}else{    if(m>=1)  //还有5毛的人未上车{c[start]=5;sum+=5;dfs(start+1,m-1,n);sum-=5;}if(n>=1&&sum>=5)//还有1块的人没上车 且售票员有五毛可找{c[start]=1;sum-=5;dfs(start+1,m,n-1);sum+=5;}}}}