Submission #219439

#TimeUsernameProblemLanguageResultExecution timeMemory
219439kartelKonstrukcija (COCI20_konstrukcija)C++14
15 / 110
5 ms384 KiB
#include <bits/stdc++.h> //#include <ext/pb_ds/assoc_container.hpp> //#include <ext/pb_ds/tree_policy.hpp> #define in(x) freopen(x, "r", stdin) #define out(x) freopen(x, "w", stdout) #pragma GCC optimize("Ofast") #pragma GCC optimize("unroll-loops") #pragma GCC optimize("-O3") #define F first #define S second #define pb push_back #define N +400500 #define M ll(1e9 + 7) #define sz(x) (int)x.size() #define re return #define oo ll(1e18) #define el '\n' using namespace std; //using namespace __gnu_pbds; //typedef tree <int, null_type, less_equal <int> , rb_tree_tag, tree_order_statistics_node_update> ordered_set; typedef long long ll; typedef long double ld; int n, k, i; int main() { srand(time(0)); ios_base::sync_with_stdio(0); iostream::sync_with_stdio(0); ios::sync_with_stdio(0); cin.tie(NULL); cout.tie(NULL); // in("input.txt"); // out("output.txt"); cin >> k; if (k >= 1 && k <= 500) { n = 3 + k; cout << n << " " << 2 * (k + 1) << el; for (i = 1; i <= k + 1; i++) cout << "1 " << i + 1 << el; for (i = 1; i <= k + 1; i++) cout << i + 1 << " " << n << el; } else { vector <pair <int, int> > ve; k = abs(k); k++; n = 2 * (k + 1); for (i = 1; i <= k; i++) ve.pb({1, i + 1}); int nx = k + 2; for (i = 1; i <= k; i++) { ve.pb({i + 1, k + 2}); if (nx == k + 2) { int j = nx + 1; for (;j < n; j++) ve.pb({i + 1, j}); nx++; } else ve.pb({i + 1, nx++}); } nx = k + 2; for (i = 1; i <= k; i++) ve.pb({nx++, n}); cout << n << " " << ve.size() << el; for (auto it : ve) cout << it.F << " " << it.S << el; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...