# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
224406 | 2020-04-17T19:05:52 Z | PedroBigMan | Birmingham (COCI20_birmingham) | C++14 | 197 ms | 28388 KB |
#include <iostream> #include <vector> #include <cmath> #include <algorithm> #include <string> #include <map> #include <set> #include <queue> #include <deque> using namespace std; typedef long long int ll; typedef unsigned long long int ull; typedef long double ld; #define REP(i,a,b) for(ll i=a; i<b; i++) #define pb push_back #define mp make_pair #define pl pair<ll,ll> #define ff first #define ss second #define INF 100000000000000000LL #define dd double ll insig; #define In(vecBRO, LENBRO) REP(IBRO,0,LENBRO) {cin>>insig; vecBRO.pb(insig);} void Out(vector<ll> x) {REP(i,0,x.size()) {cout<<x[i]<<" ";} cout<<endl;} ll sqr(ll x) { ll hi=x; ll lo=0LL; while(hi>lo) { ll mid=(lo+hi+1)/2LL; if(mid*mid<=x) {lo=mid;} else {hi=mid-1LL;} } return hi; } class Graph { public: ll N; vector<vector<ll> > adj; vector<bool> visited; //for DFS/BFS Graph(vector<vector<ll> > ad) { adj=ad; N=adj.size(); REP(i,0,N) {visited.pb(false);} } vector<ll> BFS(ll s) { vector<ll> distance; REP(i,0,N) {distance.pb(INF);} REP(i,0,N) {visited[i]=false;} distance[s]=0; visited[s]=true; deque<ll> d; d.pb(s); ll cur; while(!d.empty()) { cur=d.front(); d.pop_front(); REP(i,0,adj[cur].size()) { if(!visited[adj[cur][i]]) { visited[adj[cur][i]]=true; d.pb(adj[cur][i]); distance[adj[cur][i]]=distance[cur]+1; } } } return distance; } }; int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); ll N,M,Q,K; cin>>N>>M>>Q>>K; vector<ll> q; In(q,Q); REP(i,0,Q) {q[i]--;} vector<ll> xx; vector<vector<ll> > adj; REP(i,0,N) {adj.pb(xx);} pl cur; REP(i,0,M) { cin>>cur.ff>>cur.ss; cur.ff--; cur.ss--; adj[cur.ff].pb(cur.ss); adj[cur.ss].pb(cur.ff); } REP(i,1,q.size()) { REP(j,0,adj[q[i]].size()) {adj[q[0]].pb(adj[q[i]][j]);} } Graph G(adj); vector<ll> d=G.BFS(q[0]); vector<ll> ans; REP(i,0,N) {ans.pb(0LL);} REP(i,0,N) { ans[i]= ceil((- (dd) K + (dd) sqrt((dd) (K*K+8*K*d[i])))/(dd) (2LL*K)); } REP(i,0,q.size()) {ans[q[i]]=0LL;} REP(i,0,N) {cout<<ans[i]<<" ";} cout<<endl; return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 4 ms | 384 KB | Output is correct |
3 | Correct | 5 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 5 ms | 384 KB | Output is correct |
3 | Correct | 4 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 5 ms | 384 KB | Output is correct |
3 | Correct | 5 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 5 ms | 384 KB | Output is correct |
3 | Correct | 4 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 4 ms | 384 KB | Output is correct |
3 | Correct | 5 ms | 384 KB | Output is correct |
4 | Correct | 4 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 5 ms | 384 KB | Output is correct |
3 | Correct | 5 ms | 512 KB | Output is correct |
4 | Correct | 5 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 5 ms | 384 KB | Output is correct |
2 | Correct | 5 ms | 384 KB | Output is correct |
3 | Correct | 5 ms | 384 KB | Output is correct |
4 | Correct | 5 ms | 384 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 128 ms | 20868 KB | Output is correct |
2 | Correct | 150 ms | 21728 KB | Output is correct |
3 | Correct | 150 ms | 26472 KB | Output is correct |
4 | Correct | 120 ms | 19904 KB | Output is correct |
5 | Correct | 122 ms | 20320 KB | Output is correct |
6 | Correct | 150 ms | 28388 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 138 ms | 21732 KB | Output is correct |
2 | Correct | 138 ms | 21348 KB | Output is correct |
3 | Correct | 142 ms | 24616 KB | Output is correct |
4 | Correct | 153 ms | 21916 KB | Output is correct |
5 | Correct | 132 ms | 21348 KB | Output is correct |
6 | Correct | 170 ms | 26216 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 139 ms | 20964 KB | Output is correct |
2 | Correct | 155 ms | 21856 KB | Output is correct |
3 | Correct | 148 ms | 25828 KB | Output is correct |
4 | Correct | 187 ms | 21856 KB | Output is correct |
5 | Correct | 129 ms | 20580 KB | Output is correct |
6 | Correct | 197 ms | 26216 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 181 ms | 20196 KB | Output is correct |
2 | Correct | 133 ms | 21220 KB | Output is correct |
3 | Correct | 148 ms | 24588 KB | Output is correct |
4 | Correct | 127 ms | 20704 KB | Output is correct |
5 | Correct | 117 ms | 20068 KB | Output is correct |
6 | Correct | 130 ms | 26088 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 126 ms | 20236 KB | Output is correct |
2 | Correct | 139 ms | 20836 KB | Output is correct |
3 | Correct | 138 ms | 23020 KB | Output is correct |
4 | Correct | 126 ms | 20580 KB | Output is correct |
5 | Correct | 137 ms | 20836 KB | Output is correct |
6 | Correct | 129 ms | 25568 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 125 ms | 20320 KB | Output is correct |
2 | Correct | 134 ms | 20964 KB | Output is correct |
3 | Correct | 132 ms | 24116 KB | Output is correct |
4 | Correct | 140 ms | 21344 KB | Output is correct |
5 | Correct | 139 ms | 20580 KB | Output is correct |
6 | Correct | 160 ms | 26428 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 165 ms | 20584 KB | Output is correct |
2 | Correct | 117 ms | 19936 KB | Output is correct |
3 | Correct | 151 ms | 25448 KB | Output is correct |
4 | Correct | 126 ms | 20560 KB | Output is correct |
5 | Correct | 129 ms | 20964 KB | Output is correct |
6 | Correct | 147 ms | 28252 KB | Output is correct |