Beat
Time Limit: 6000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 837 Accepted Submission(s): 524
Problem Description Zty is a man that always full of enthusiasm. He wants to solve every kind of difficulty ACM problem in the world. And he has a habit that he does not like to solve
a problem that is easy than problem he had solved. Now yifenfei give him n difficulty problems, and tell him their relative time to solve it after solving the other one.
You should help zty to find a order of solving problems to solve more difficulty problem.
You may sure zty first solve the problem 0 by costing 0 minute. Zty always choose cost more or equal time’s problem to solve.
Input The input contains multiple test cases.
Each test case include, first one integer n ( 2< n < 15).express the number of problem.
Output For each test case output the maximum number of problem zty can solved.
Sample Input
3 0 0 0 1 0 1 1 0 0 3 0 2 2 1 0 1 1 1 0 5 0 1 2 3 1 0 0 2 3 1 0 0 0 3 1 0 0 0 0 2 0 0 0 0 0
Sample Output
3 2 4 Hint Hint: sample one, as we know zty always solve problem 0 by costing 0 minute. So after solving problem 0, he can choose problem 1 and problem 2, because T01 >=0 and T02>=0. But if zty chooses to solve problem 1, he can not solve problem 2, because T12 < T01. So zty can choose solve the problem 2 second, than solve the problem 1.
Author yifenfei
Source 奋斗的年代
Recommend yifenfei | We have carefully selected several similar problems for you: 1426 2616 1312 1501 2181 ac代码
#include#include #define max(a,b) (a>b?a:b) int map[1010][1010],vis[1010]; int ans,n; void dfs(int i,int len,int num) { ans=max(ans,len); if(len==n) return; for(int j=0;j =num) { vis[j]=1; dfs(j,len+1,map[i][j]); vis[j]=0; } } } } int main() { //int n; while(scanf("%d",&n)!=EOF) { int i,j; for(i=0;i