zoukankan      html  css  js  c++  java
  • hdu1331Function Run Fun

    我一开始是打算通过看数据,查找规律的,但是觉得这样很麻烦,即使看出来,那也没有掌握到其中的思想,加之没有思路,所以我干脆看了人家的答案

    人家的题解

    其实本题函数递归都给我们了。

    但是就是说,要用一般简单的函数的话,就会超时(我试过。)

    然后我参考了别人博客构造一个三维数组"int d[a][b][c]",用来记忆。

    真的用到的是后面

    “  if(d[a][b][c])  return d[a][b][c];”

    只要曾经算过得就可以记下了。减少了计算时间了!

    #include "iostream"
    #include "string.h"
    using namespace std;
    int f[21][21][21];
    int w(int a,int b,int c){
      if(a<=0||b<=0||c<=0)return 1;
      if(a>20||b>20||c>20)return w(20,20,20);
      if(f[a][b][c])return f[a][b][c];
      if(a<b&&b<c)return f[a][b][c]=w(a, b, c-1) + w(a, b-1, c-1) - w(a, b-1, c);
       else return f[a][b][c]=w(a-1, b, c) + w(a-1, b-1, c) + w(a-1, b, c-1) - w(a-1, b-1, c-1);
    }
    int main(){
      int a,b,c;
      while(cin>>a>>b>>c){
        memset(f,0,sizeof(f));
        if(a==-1&&b==-1&&c==-1)break;
        cout<<"w("<<a<<", "<<b<<", "<<c<<") = "<<w(a,b,c)<<endl;
      }
    }
  • 相关阅读:
    R-CNN算法中NMS的具体做法
    Spring之Environment
    Spring之Aware
    每晚夜里自我独行,随处荡,多冰冷,以往为了自我挣扎
    Java 反射机制
    Java string String
    Java int Integer
    Java final
    Java toString()方法
    Java Enum
  • 原文地址:https://www.cnblogs.com/dowson/p/3287041.html
Copyright © 2011-2022 走看看