zoukankan      html  css  js  c++  java
  • 1163The Triangle

    之所以会做这道题目是这两天都在看dp,到网上搜到一些关于dp的题目。

    但是我第一次看这道题时,脑海里第一个想法就是我被坑了,这明明是搜索的题目,所以也按照自己的想法去做,结果超时了,这个可以理解

    到网上寻找了一些答案,神了,真的可以用dp来做。

    #include<iostream>
    #include<algorithm>
    using namespace std;
    int dp[101][101];
    int main()
    {  int n;
        cin>>n;
        int maxn=0;
        for(int i=1;i<=n;++i)
            for(int j=1;j<=i;++j)
                {cin>>dp[i][j];
                   dp[i][j]+=max(dp[i-1][j-1],dp[i-1][j]);
                 }
        cout<<*max_element(dp[n],dp[n]+n)<<endl;
        return 0;
    }

    顺便也贴上我的代码,不过超时了

    #include "iostream"
    using namespace std;
    
    int best=0,n,table[300][300];
    int total;
    
    void count(int x,int y){
      if(x>=n){
         if(best<total)best=total;
         return;
      }
      total+=table[x+1][y-1];
      count(x+1,y-1);
      total=total-table[x+1][y-1]+table[x+1][y+1];
      count(x+1,y+1);
      total=total-table[x+1][y+1];
    }
    
    int main(){
      int i,temx,temy,s,j,k;
      cin>>n;
      s=n;
      temy=1;
      for(i=1;i<=n;i++,s--){
        for(j=s,k=0;k<i;k++,j=j+2){
          cin>>table[i][j];
        }
      }
      total=table[1][n];
      count(1,n);
      cout<<best<<endl;
    }
  • 相关阅读:
    Java--动态代理
    java-finalize
    Oauth1.0认证过程
    深入理解-HashMap
    Java--对象内存布局
    Java--finally
    一个非常有用的算法---统计二进制数中1的个数
    进程之间通信
    SpringMVC听课笔记(十三:使用拦截器)
    SpringMVC听课笔记(十二:文件的上传)
  • 原文地址:https://www.cnblogs.com/dowson/p/3255350.html
Copyright © 2011-2022 走看看