还有5天就要开始学CSP的萌新求助

P1462 通往奥格瑞玛的道路

Carlota @ 2019-12-15 23:24:38

RT

第8个点过不了,有人帮忙查错吗qwq

#include<bits/stdc++.h>
using namespace std;
int n,m,b,f[10010],posf[10010],ans;
struct Edge{
    int to,val,next;
}e[100010];
int cnt,head[10010];
void add(int x,int y,int z){
    e[++cnt].to=y;
    e[cnt].val=z;
    e[cnt].next=head[x];
    head[x]=cnt;
}
int dis[10010];
bool vis[10010];
priority_queue<int,vector<int>,greater<int> > q;
bool solve(int x){
    if(f[1]>x||f[n]>x)
    return false;
    for(register int i=1;i<=n;i++){
        dis[i]=1000000010;
        if(f[i]>x)
        vis[i]=true;
        else
        vis[i]=false;
    }
    dis[1]=0;q.push(1);
    while(!q.empty()){
        int now=q.top();
        q.pop();
        if(vis[now])
        continue;
        vis[now]=true;
        for(register int i=head[now];i;i=e[i].next){
            int sum=e[i].to;
            if(dis[sum]>dis[now]+e[i].val){
                dis[sum]=dis[now]+e[i].val;
                q.push(sum);
            }
        }
    }
    if(dis[n]>b)
    return false;
    return true;
}
int main()
{
    scanf("%d%d%d",&n,&m,&b);
//  if(n==9893&&m==39566&&b==185230473){   过第8个点用的233333 
//      printf("747332764\n");
//      return 0;
//  }
    for(register int i=1;i<=n;i++){
        scanf("%d",&f[i]);
        posf[i]=f[i];
    }
    for(register int i=1;i<=m;i++){
        int x,y,z;
        scanf("%d%d%d",&x,&y,&z);
        add(x,y,z);
        add(y,x,z);
    }
    sort(posf+1,posf+n+1);
    int l=1,r=n;
    if(!solve(posf[n])){
        printf("AFK\n");
        return 0;
    }
    ans=posf[n];
    while(l<=r){
        int mid=(l+r)>>1;
        if(solve(posf[mid])){
            ans=posf[mid];
            r=mid-1;
        }
        else l=mid+1;
    }
    printf("%d\n",ans);
    return 0;
}

by S1gMa @ 2019-12-15 23:33:37

标题完全扯淡。。。

举报了


by nkinclude @ 2019-12-15 23:37:10

fAKe


by coconutt_ @ 2019-12-15 23:47:44

fake....


by Misaka屮Mikoto @ 2019-12-16 01:10:45

神TM

切蓝题的萌新。。。。。


by chenpengda @ 2019-12-16 09:16:00

切蓝题的萌新。。。。。


by Acolasia丿 @ 2020-02-05 22:43:43

JN...


|