poj 1163 递归

  1. #include <iostream>
  2. #include <stdlib.h>
  3. //use recurrence way to find most biggest total
  4. using namespace std;
  5. int sum=0;
  6. void print_value(int a[][110],int N) //printf the number
  7. {
  8. for(int row=1; row<=N; row++)
  9. for(int line=1; line<=row; line++)
  10. cin>>a[row][line];
  11. }
  12. void search(int a[][110], int i, int j, int N, int all) //find the most biggest number
  13. {
  14. all+=a[i][j];
  15. if(i==N)
  16. {
  17. if(sum <all )
  18. sum =all ;
  19. return ;
  20. }
  21. search(a ,i+1 ,j ,N, all);
  22. search(a ,i+1 ,j+1 ,N ,all);
  23. }
  24. int main()
  25. {
  26. int N;
  27. cin>>N;
  28. int value[110][110]={0};
  29. print_value(value,N);
  30. search(value ,1 ,1 ,N , 0);
  31. cout<<sum<<endl;
  32. return 0;
  33. }





附件列表

    原文地址:https://www.cnblogs.com/sober-reflection/p/7925825eef31f9a5c94250f31038b496.html