zoukankan      html  css  js  c++  java
  • F. Moving On

    http://codeforces.com/gym/102222/problem/F

    fory 

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    #define lson root<<1,l,midd
    #define rson root<<<1|1,midd+1,r
    #define pb push_back
    const int M=220;
    const int inf=0x3f3f3f3f;
    int a[M],b[M],dp[M][M][M];
    bool cmp(int x,int y){
        return a[x]<a[y];
    }
    int main(){
        int t;
        scanf("%d",&t);
        for(int l=1;l<=t;l++){
            int n,m;
            scanf("%d%d",&n,&m);
            memset(dp,inf,sizeof(dp));
            for(int i=1;i<=n;i++)
                scanf("%d",&a[i]),b[i]=i;
            sort(b+1,b+1+n,cmp);
            for(int i=1;i<=n;i++)
                for(int j=1;j<=n;j++)
                    scanf("%d",&dp[0][i][j]);
            for(int k=1;k<=n;k++){
                int now=b[k];
                for(int i=1;i<=n;i++)
                    for(int j=1;j<=n;j++)
                        dp[k][i][j]=min(dp[k-1][i][j],dp[k-1][i][now]+dp[k-1][now][j]);
            }
            printf("Case #%d:
    ",l);
            while(m--){
                int u,v,up;
                scanf("%d%d%d",&u,&v,&up);
                int mubiao=0;
                for(int i=1;i<=n;i++){
                    if(a[b[i]]>up)
                        break;
                    mubiao++;
                }
                printf("%d
    ",dp[mubiao][u][v]);
            }
        }
        return 0;
    }
    View Code
  • 相关阅读:
    微服务架构
    微服务架构
    Java语言编程
    Java语言编程
    Java语言编程
    《自己动手写云盘》 – 确立需求
    树上差分
    线性基
    BM(Berlekamp-Massey)算法
    FFT/FWT
  • 原文地址:https://www.cnblogs.com/starve/p/11439076.html
Copyright © 2011-2022 走看看