답안 #878512

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
878512 2023-11-24T15:47:33 Z cpptowin 공장들 (JOI14_factories) C++17
0 / 100
5 ms 16732 KB
#include"factories.h"
#include<bits/stdc++.h>
#define fo(i,d,c) for(int i=d;i<=c;i++)
#define fod(i,c,d) for(int i=c;i>=d;i--)
#define maxn 1000010
#define pb emplace_back
//#define int long long
//#define inf 1000000000
//#define pii pair<int,int>
//#define vii vector<pii>
//#define lb(x) x&-x
//#define bit(i,j) ((i>>j)&1)
//#define offbit(i,j) (i^(1<<j))
//#define onbit(i,j) (i|(1<<j))
//#define vi vector<int>
using namespace std;
//vii ke[maxn];
//int par[maxn][20],sz[maxn],h[maxn],d[maxn];
//int ind[maxn],head[maxn],cnt = 1;
//vector<array<int,3>> adj[maxn];
//bool type[maxn];
//void dfs(int u,int parent)
//{
//    sz[u] = 1;
//    for(auto [v,w] : ke[u])
//    {
//        if(v == parent) continue;
//        par[v][0] = u;
//        h[v] = h[u] + 1;
//        d[v] = d[u] + w;
//        dfs(v,u);
//        sz[u] += sz[v];
//    }
//}
//void hld(int u,int parent)
//{
//    if(head[cnt] == 0) head[cnt] = u;
//    ind[u] = cnt;
//    int sc = -1,maxx = -1;
//    for(auto [v,w] : ke[u]) if(v != parent)
//        {
//            if(maxx < sz[v])
//            {
//                maxx = sz[v];
//                sc = v;
//            }
//        }
//    if(sc != -1) hld(sc,u);
//    for(auto [v,w] : ke[u]) if(v != parent and v != sc)
//        {
//            cnt++;
//            hld(v,u);
//        }
//}
//void get(int u)
//{
//    int val = d[u],t = type[u];
//    int uchain,vchain = ind[1];
//    while(1)
//    {
//        uchain = ind[u];
//        adj[uchain].push_back({u,val,t});
//        if(uchain == vchain) return;
//        u = ind[u];
//        u = par[head[u]][0];
//    }
//}
void Init(int N,int A[],int B[],int D[])
{
//    fo(i,0,N - 2)
//    {
//        ke[A[i] + 1].pb(B[i] + 1,D[i]);
//        ke[B[i] + 1].pb(A[i] + 1,D[i]);
//    }
//    dfs(1,1);
//    hld(1,1);
}
long long Query(int S, int X[], int T, int Y[])
{
    int ans = 2e18;
//    fo(i,0,S - 1) get(X[i] + 1);
//    fo(i,0,T - 1)
//    {
//        type[Y[i] + 1] = 1;
//        get(Y[i] + 1);
//    }
//    fo(i,1,cnt)
//    {
//        int minn[2];
//        minn[0] = minn[1] = 2e18;
//        sort(adj[i].begin(),adj[i].end(),[](array<int,3> a,array<int,3> b)
//        {
//            return d[a[0]] > d[b[0]];
//        });
//        for(auto [v,dist,t] : adj[i])
//        {
//            ans = min(ans,minn[1 - t] - 2 * d[v] + dist);
//            minn[t] = min(minn[t],dist);
//        }
//    }
    return ans;
}

Compilation message

factories.cpp: In function 'long long int Query(int, int*, int, int*)':
factories.cpp:80:15: warning: overflow in conversion from 'double' to 'int' changes value from '2.0e+18' to '2147483647' [-Woverflow]
   80 |     int ans = 2e18;
      |               ^~~~
# 결과 실행 시간 메모리 Grader output
1 Incorrect 5 ms 16728 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 3 ms 16732 KB Output isn't correct
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Incorrect 5 ms 16728 KB Output isn't correct
2 Halted 0 ms 0 KB -