Task: | Distance Code |
Sender: | Jatana |
Submission time: | 2019-03-09 21:35:46 +0200 |
Language: | C++ |
Status: | READY |
Result: | 100 |
group | verdict | score |
---|---|---|
#1 | ACCEPTED | 21 |
#2 | ACCEPTED | 47 |
#3 | ACCEPTED | 32 |
test | verdict | time | group | |
---|---|---|---|---|
#1 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#2 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#3 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#4 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#5 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#6 | ACCEPTED | 0.01 s | 1, 2, 3 | details |
#7 | ACCEPTED | 0.03 s | 1, 2, 3 | details |
#8 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#9 | ACCEPTED | 0.01 s | 1, 2, 3 | details |
#10 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#11 | ACCEPTED | 0.02 s | 1, 2, 3 | details |
#12 | ACCEPTED | 0.01 s | 2, 3 | details |
#13 | ACCEPTED | 0.02 s | 2, 3 | details |
#14 | ACCEPTED | 0.02 s | 2, 3 | details |
#15 | ACCEPTED | 0.02 s | 2, 3 | details |
#16 | ACCEPTED | 0.07 s | 3 | details |
#17 | ACCEPTED | 0.06 s | 3 | details |
#18 | ACCEPTED | 0.07 s | 3 | details |
#19 | ACCEPTED | 0.07 s | 3 | details |
#20 | ACCEPTED | 0.01 s | 1, 2, 3 | details |
Compiler report
input/code.cpp: In instantiation of 'void fast_print(const std::vector<_Tp>&) [with T = int]': input/code.cpp:244:12: required from 'std::ostream& operator,(std::ostream&, const T&) [with T = std::vector<int>; std::ostream = std::basic_ostream<char>]' input/code.cpp:306:8: required from here input/code.cpp:181:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 1; i < v.size(); i++) { input/code.cpp: In function 'void fast_scan(int&)': input/code.cpp:133:31: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] void fast_scan(int &x) { scanf("%d", &x); } ~~~~~^~~~~~~~~~ input/code.cpp: In function 'void fast_scan(long long int&)': input/code.cpp:134:37: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] void fast_scan(long long &x) { scanf("%lld", &x); }...
Code
/*`-:://:::-`//:-------:/:`.+:--.......--:+``+:--..`````..--//`.o:--..`` ``..--:o`.o:--...```..---+/``/y+o/---....---:+o.`...````-os+/:---:/+o/--.``-/+++++/:. `...` :h+d+oooo+/+-` ...`/++//:::://++-`....` -.`//````````:` `..``o+/::------://o/` `-` -. -` `..``---.-o/:./o/::-..``..-ЗАПУСКАЕМ .. .. -` `... ``..```....o+:-++/:--.```..-://s. `-` .- -` `-o: .-//::::/:-``:s+/:--....-::/+s-` .- `- -` -///:--------:/:`./s+//:::::://oo-``..НЕЙРОННУЮ: СЕТЬ:::::::-`РАБОТЯГИ `+:--........--:/`.:ooo+++++osso-` `.:-...`/` ./::-------:/:` -` :+--..``````.--:+:...-+:-``.-/+++++/+-.-` -. ``:so:/:--.......--:+` `-```````o+/+--..`````..--:o/-..:s+:.```````:``.. `-` -` `+:--..`````..--/+-.../.`````..-o:--.......---/o. ``: `:- -. .o:--..`` ``..--:o` `-` `:o+:--------:+o-``-`-... .. .o/--...```..--:+/` `-` `oy/so/////++o/.`-/` `-` `- ``+s/o/:---...---:++. `-` .-../d://///:-.``.---..``-..- .-/..`````-oo+/:::::/+o+- `-``-` `-. `````:++++/+++++- ..``.-/:` /y-:/++o++/:.`..` ./. `--++/::::::://+/..:-``:` .. `-.` ```.``` `..` `..`-` `-`` -o//:--....-::/++` -.-` `-`.-` `..`..` `-.------ss+:++/:--.```..-://s. /. `:: `-:. ./``````/:..+o/::-..``.--:/+s. ..-` `-``-` ..` `-` `-`-``-s+/::-----::/+oo---``-` .. .:- ``` .-` .-.- `-``:oo+//::://+os/..:`..-/:` :y.-:::::::.`.-` ./-` `-``./+oooooooo+/.`- .-:...`.. .//:-------://` `- `..` `:.``.-::::-.``-/` `-` `- `oo:+:--.......--:/` `- `.:--h.``..```-.-`.- .- `+:--..`````..--//` `- /s-//::::::::.-` `/- .. .o:--..`` ``..--:o.```.- `//:--------://`-` .-`.-` -.`-o/--...```..--:+/.``-:....``:-.+:--....`...--:+`..`-. `-. ``:os:o/:---...---:++. `- ``///+:-..``````.--:+-````-.``.:///////.-` .:-..` -``-+o+/:::::/+o/. `- `:+:-..`````..--:o/:--/ys+-`-++///////+o/. ``....`-. :` `.:++++++/:.` .- -o/---......---/o. `.``++//:-----::/+o:..` .-` : ``````` .- `+so+:--------:++-``````:-``:o/::-..`..--:/+o` -. `- .- `../../+o+////+o+:.`-----syo/o+/:--.```..-://s. .-` `- .- `... ``-:////:-``.` `/s//:--....-::/+s. -. `-` .- `..`.+o+/:::--:://+s/-..` .::+y ``` .- `..`./oo++////+oso-` `.... :y-+:::::::/` ...`.:+oooooo/-` `....-. .//:-------:/:-.```...`` /+:+:--.......--:+``+:--..`````..--//`.o:--..`` ``..--:o`.+/--...```..--:+/``-o/:---...---:++.`-+o+/:---:/+o/.`.:+oooo+/-.```````*/#ifdef aimbot#pragma comment(linker, "/stack:200000000")#pragma GCC optimize("Ofast")#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,tune=native")#pragma GCC optimize("unroll-loops")#endif#include <iostream>#include <vector>#include <algorithm>#include <cmath>#include <string>#include <unordered_map>#include <unordered_set>#include <map>#include <set>#include <queue>#include <ostream>#include <istream>#include <typeinfo>#include <iomanip>#include <cstdio>#include <cstdlib>#include <cassert>#include <limits>#include <fstream>#include <array>#include <list>#include <bitset>#include <functional>#include <random>#include <cstring>#include <chrono>#define random escape__from__random__aetuhoetnuhshe#define mt make_tuple#define x first#define y second#define pb push_back#define ppb pop_back#define mp make_pair#define umap unordered_map#define uset unordered_set#define elif else if#define len(v) ((int)v.size())#define f(i, n) for (int i = 0; i < (n); i++)#define rof(i, n) for (int i = ((n) - 1); i >= 0; i--)#define apply(v, act) for (auto &x : v) { act; }#define log(args...) {string s = #args;deque<string> deq;\string buf = "";int bal = 0;for (char c : s) {\if (c == '(' || c == '[' || c == '{') {bal++;\} else if (c == ')' || c == ']' || c == '}') {\bal--;} else {if (bal == 0) {if (c == ',') {\deq.pb(buf);buf = "";} else {if (c != ' ') {\buf += c;}}}}}if (!buf.empty()) {deq.pb(buf);}\smart_io::precall_print();smart_io::_print(deq, args);}#define print \smart_io::precall_print(); \cout,#define scan cin,#ifdef fast_allocatorconst int MAXMEM = 200 * 1000 * 1024;char _memory[MAXMEM];size_t _ptr = 0;void* operator new(size_t _x) { _ptr += _x; assert(_ptr < MAXMEM); return _memory + _ptr - _x; }void operator delete (void*) noexcept {}#endifusing namespace std;char string_in_buffer[(int)260];void fast_scan(int &x) { scanf("%d", &x); }void fast_scan(long long &x) { scanf("%lld", &x); }void fast_scan(unsigned long long &x) { scanf("%llu", &x); }void fast_scan(double &x) { scanf("%lf", &x); }void fast_scan(long double &x) { scanf("%Lf", &x); }void fast_scan(char &x) {scanf("%c", &x);if (x == '\n') {fast_scan(x);}}void fast_scan(string &x) {scanf("%s", string_in_buffer);x = string(string_in_buffer);}template<class TFirst, class TSecond>void fast_scan(pair<TFirst, TSecond> &p) {fast_scan(p.first);fast_scan(p.second);}template <class T>void fast_scan(vector<T> &v) {for (auto &x : v) fast_scan(x);}void fast_print(const int &x) { printf("%d", x); }void fast_print(const unsigned int &x) { printf("%u", x); }void fast_print(const long long &x) { printf("%lld", x); }void fast_print(const unsigned long long &x) { printf("%llu", x); }void fast_print(const double &x) { printf("%.15lf", x); }void fast_print(const long double &x) { printf("%.15Lf", x); }void fast_print(const char &x) { printf("%c", x); };void fast_print(const string &x) { printf("%s", x.c_str());}void fast_print(const char v[]) { fast_print((string)v); }template<class TFirst, class TSecond>void fast_print(const pair<TFirst, TSecond> &p) {fast_print(p.first);fast_print(' ');fast_print(p.second);}template <class T>void fast_print(const vector<T> &v) {if (v.empty()) return;fast_print(v[0]);for (int i = 1; i < v.size(); i++) {fast_print(' ');fast_print(v[i]);}}template <class T>void fast_print(const vector<vector<T>> &v) {if (v.empty()) return;fast_print(v[0]);for (int i = 1; i < v.size(); i++) {fast_print('\n');fast_print(v[i]);}}template <class T>void fast_print(const T &v) {for (const auto &x : v) {fast_print(x);fast_print(' ');}}using namespace std;namespace smart_io {string print_start = "";string sep = " ";bool first_print = false;void precall_print() {fast_print(print_start);print_start = "\n";first_print = true;}void _print(deque<string>) {}template<class T, class... Args>void _print(deque<string> names, T elem, Args... args) {if (!first_print) {fast_print("\n");} else {first_print = false;}fast_print(names.front());fast_print(" = ");fast_print(elem);names.pop_front();_print(names, args...);}} //namespace smart_iotemplate <class T>ostream &operator,(ostream &os, const T &object) {if (!smart_io::first_print) {fast_print(smart_io::sep);} else {smart_io::first_print = false;}fast_print(object);return os;}template <class T>istream &operator,(istream &is, T &object) {fast_scan(object);return is;}namespace random {using namespace std::chrono;mt19937 rng(duration_cast< milliseconds >(system_clock::now().time_since_epoch()).count());uniform_real_distribution<> prob_dist(0.0, 1.0);};namespace typedefs {typedef long long ll;typedef unsigned long long ull;typedef pair<int, int> pii;typedef long double ld;}namespace numbers_operation {template<class T>T floor_mod(T a, T b) {if (a >= 0 && b >= 0) return a % b;if (a <= 0 && b <= 0) return a % b;return abs(b) - (abs(a) % abs(b));}}using namespace numbers_operation;using namespace typedefs;using namespace random;int n;vector<vector<int>> g;vector<int> order;void dfs(int v, int _p) {for (int sub : g[v]) {if (sub == _p) continue;dfs(sub, v);}order.pb(v);}void encode() {scan n;g.resize(n);f(i, n - 1) {int a, b;scan a, b;a--;b--;g[a].pb(b);g[b].pb(a);}dfs(0, -1);apply(order, x++);print order;}void decode() {scan n;int nodes = 1;deque<int> deq{0};f(i, n - 1) {int d;scan d;if (len(deq) == 1) {deq.push_front(nodes++);}print deq.back() + 1, deq[len(deq) - 2] + 1;d--;deq.pop_back();f(i, d) {deq.push_back(nodes++);}}}signed main(signed argc, char *argv[]) {int t;scan t;if (t == 1) {encode();} else {decode();}}
Test details
Test 1
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 2 2 1 |
correct output |
---|
(empty) |
user output |
---|
1 2 |
Test 2
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 3 3 1 2 1 |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 |
Test 3
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 4 3 2 2 1 4 1 |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 4 3 |
Test 4
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 4 2 3 3 4 1 3 |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 2 4 |
Test 5
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 5 3 5 4 1 1 3 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 5 4 4 3 |
Test 6
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 5 3 2 3 4 5 1 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 4 3 5 3 3 2 |
Test 7
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 5 4 3 1 4 4 2 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 4 2 2 5 |
Test 8
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 10 9 3 8 9 2 9 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 4 2 5 2 6 2 ... |
Test 9
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 10 9 2 5 8 7 1 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 3 4 4 5 5 6 ... |
Test 10
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 10 10 4 9 1 4 7 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 4 3 3 2 6 5 10 9 ... |
Test 11
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 10 2 6 4 3 3 5 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 3 4 4 5 5 6 ... |
Test 12
Group: 2, 3
Verdict: ACCEPTED
input |
---|
1 500 10 6 6 255 6 428 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 4 2 5 2 6 2 ... Truncated |
Test 13
Group: 2, 3
Verdict: ACCEPTED
input |
---|
1 500 152 466 451 313 158 479 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 3 4 4 5 5 6 ... Truncated |
Test 14
Group: 2, 3
Verdict: ACCEPTED
input |
---|
1 500 109 440 330 190 443 161 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 5 4 8 7 11 10 10 9 ... Truncated |
Test 15
Group: 2, 3
Verdict: ACCEPTED
input |
---|
1 500 144 373 257 233 341 318 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 3 4 4 5 5 6 ... Truncated |
Test 16
Group: 3
Verdict: ACCEPTED
input |
---|
1 100000 54983 75172 93807 75172 44082 75172 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 4 2 5 2 6 2 ... Truncated |
Test 17
Group: 3
Verdict: ACCEPTED
input |
---|
1 100000 88863 19059 86423 76688 98536 95984 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 3 4 4 5 5 6 ... Truncated |
Test 18
Group: 3
Verdict: ACCEPTED
input |
---|
1 100000 59979 6389 19097 24999 27846 82330 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 5 4 7 6 9 8 8 6 ... Truncated |
Test 19
Group: 3
Verdict: ACCEPTED
input |
---|
1 100000 58761 66001 25102 51081 98625 67861 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 2 3 3 4 4 5 5 6 ... Truncated |
Test 20
Group: 1, 2, 3
Verdict: ACCEPTED
input |
---|
1 6 2 1 3 2 4 2 ... |
correct output |
---|
(empty) |
user output |
---|
1 2 3 2 2 4 5 4 4 6 |