zoukankan      html  css  js  c++  java
  • 数字三角形

    1.递推计算
    #include<iostream>
    #include<cstdio>
    using namespace std;
    int mx(int a,int b)
    {
        if(a>b)
            return a;
        else
            return b;
    }
    int main ()
    {
        int n;
        int a[200][200];
         while(~scanf("%d",&n))
         {
            for(int i=0;i<n;i++)
            {
                for(int j=0;j<=i;j++)
                {
                    cin>>a[i][j];
                }
            }
            
            for(int i=n-1;i>0;i--)
            {
                for(int j=n-1;j>0;j--)
                {
                    a[i-1][j-1]=a[i-1][j-1]+mx(a[i][j-1],a[i][j]);
                }
            }
            
            cout<<a[0][0];
         }
         return 0;
    }

    提交时数组开小了。提示Runtime Error at Test 1

    2.记忆化搜索

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    using namespace std;
    int a[200][200],d[200][200],n;
    int ma(int a,int b)
    {
        if(a>b)
            return a;
        else
            return b;
    }
    int dd(int i,int j)
    {
        if(d[i][j]>=0)
            return d[i][j];
        else if(n==i)
            return d[i][j]=a[i][j];
        else
            return d[i][j]=a[i][j]+ma(dd(i+1,j),dd(i+1,j+1));
    }
    int main ()
    {
        while(~scanf("%d",&n))
        {
            memset(d,-1,sizeof(d));
            for(int i=0;i<n;i++)
            {
                for(int j=0;j<=i;j++)
                {
                    cin>>a[i][j];
                }
            }
            cout<<dd(0,0);
        }
        return 0;
    }
    方法不错


    
  • 相关阅读:
    组合模式
    迭代器模式
    模板方法模式
    外观模式
    适配器模式
    运行mysql时,提示Table ‘performance_schema.session_variables’ doesn’t exist
    idea maven 打包 引用本地jar
    centos7 安装redis
    centos7 防火墙
    linux 常用命令
  • 原文地址:https://www.cnblogs.com/peterleee/p/9373791.html
Copyright © 2011-2022 走看看