• P1359 租用游艇


    题目描述

    长江游艇俱乐部在长江上设置了 nn 个游艇出租站 1,2,cdots,n1,2,,n。游客可在这些游艇出租站租用游艇,并在下游的任何一个游艇出租站归还游艇。游艇出租站 ii 到游艇出租站 jj 之间的租金为 r(i,j)r(i,j)(1le ilt jle n1i<jn)。试设计一个算法,计算出从游艇出租站 11 到游艇出租站 nn 所需的最少租金。

    输入格式

    第一行中有一个正整数 nn,表示有 nn 个游艇出租站。接下来的 n-1n1 行是一个半矩阵 r(i,j)r(i,j)(1le i<jle n1i<jn)。

    输出格式

    输出计算出的从游艇出租站 11 到游艇出租站 nn 所需的最少租金。

    输入输出样例

    输入 #1
    3
    5 15
    7
    
    
    输出 #1
    12

    动态规划
    #include <bits/stdc++.h>
    using namespace std;int a[201][201],b[201],n;
    
    int main()
    {
        int k,u,t,i,j;
        memset(b,9999999,sizeof(b)); 
        cin>>n;
        for(i=1;i<n;i++)
        {
        for(j=i+1;j<=n;j++)
        {
            cin>>a[i][j];
        }    
        }
        b[2]=a[1][2];
        b[1]=0;
        for(k=3;k<=n;k++)
        {
            for(u=1;u<=n-1;u++)
            {
                
                t=b[u]+a[u][k];
                if(t<b[k])
                b[k]=t;
            }
        }
        cout<<b[n];
    }


  • 相关阅读:
    取石子(五)(FIB博弈)
    NYOJ-161-取石子 (四)(Wythoff 博弈)
    memcached简介
    RSA---应用最广泛的非对称加密算法
    分区
    按子组收集数据
    多级分组
    归约和汇总
    收集器Collectors
    由函数生成流---创建无限流:Stream.iterate和Stream.generate
  • 原文地址:https://www.cnblogs.com/lau1997/p/12633706.html
Copyright © 2020-2023  润新知