Contest Duration: - (local time) (100 minutes) Back to Home

Submission #6064410

Source Code Expand

Copy
```// #pragma GCC optimize("Ofast,no-stack-protector,unroll-loops,fast-math")
// #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native")

#include <bits/stdc++.h>

using namespace std;

#define BOOST 			ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define ALL(a) 			(a).begin(), (a).end()
#define SZ(a) 			(int)(a).size()
#define FOR(a, b, c) 	for (int a = (b); a <  (c); a++)
#define FORR(a, b, c) 	for (int a = (b); a >= (c); a--)
#define TRAV(a, b) 		for (auto& a : b)
#define ELO 			exit(0)
#define SORT(a)         sort(ALL(a))
#define REV(a)          reverse(ALL(a))
#define SORTR(a)        SORT(a), REV(a)
#define PB              push_back
using ll = 				long long;
using ld = 				long double; // 'long double' is 2.2 times slower than double
using pii = 			pair<int, int>;
using pll = 			pair<ll, ll>;
using vi = 				vector<int>;
using vll = 			vector<ll>;
using vpii = 			vector<pii>;
using vpll = 			vector<pll>;

template <class T> inline bool setmin(T& a, T b) {if (a > b) return a = b, 1; return 0; }
template <class T> inline bool setmax(T& a, T b) {if (a < b) return a = b, 1; return 0; }

namespace fastio {
template <class T> istream &operator>>(istream &os, vector<T> & vec){for (auto &u : vec)os >> u;return os;}
template <class T> ostream &operator<<(ostream &os, const vector<T> & vec){for (auto &u : vec)os << u << " ";return os;}
template<class T1, class T2> inline istream& operator>>(istream& os, pair<T1, T2>& p) { return os >> p.first >> p.second; }
template<class T1, class T2> ostream& operator<<(ostream& os, const pair<T1, T2>& p) { return os << p.first << " " << p.second; }
template <class T> ostream &operator<<(ostream &os, set<T> & con) { for (auto &u : con) os << u << " "; return os; }

void re() {}
template <typename T, typename... args> void re(T& x, args&... tail) { cin >> x; re(tail...); }
void pr() {}
template <typename T, typename... args> void pr(T x, args... tail) { cout << x << " "; pr(tail...);}
template <typename... args> void prln(args... tail) { pr(tail...); cout << "\n";}
}
using namespace fastio;

namespace debug {
template < typename _T > inline void _debug(const char *s, _T x) { cerr << s << " = " << x << "\n"; }
template < typename _T, typename... args > void _debug(const char *s, _T x, args... a) { while(*s != ',') cerr << *s++; cerr << " = " << x << ','; _debug(s + 1, a...); }

#if 1
#define debug(...) _debug(#__VA_ARGS__, __VA_ARGS__)
#define cerr cout
#else
#define debug(...) 1999
#define cerr if(0) cout
#endif
}
using namespace debug;

//////////////_________CODE_________//////////////

constexpr int MOD = 1e9 + 7; // 998244353
constexpr int INF = INT_MAX;
constexpr ll LLINF = LLONG_MAX;

int main() {
BOOST;
int n, k; re(n, k);

vpii res;
vi l;
FOR(i, 2, n + 1) {
l.PB(i);
res.PB({1, i});
}

int cur = SZ(l) * (SZ(l) - 1) / 2;
if(cur < k) {
prln(-1);
ELO;
}

int i = 0, j = 1;
while(cur > k) {
res.push_back({l[i], l[j]});
if(++j == SZ(l)) {
i++;
j = i + 1;
}
cur--;
}

prln(SZ(res));
TRAV(i, res) {
prln(i);
}
ELO;
}```

#### Submission Info

Submission Time 2019-06-22 21:27:10+0900 E - Friendships DomiKo C++14 (GCC 5.4.1) 500 3385 Byte AC 2 ms 384 KB

#### Judge Result

Set Name All Sample
Score / Max Score 500 / 500 0 / 0
Status
 AC × 18
 AC × 2
Set Name Test Cases
All sample_01, sample_02, testcase_01, testcase_02, testcase_03, testcase_04, testcase_05, testcase_06, testcase_07, testcase_08, testcase_09, testcase_10, testcase_11, testcase_12, testcase_13, testcase_14, testcase_15, testcase_16
Sample sample_01, sample_02
Case Name Status Exec Time Memory
sample_01 AC 1 ms 256 KB
sample_02 AC 1 ms 256 KB
testcase_01 AC 1 ms 256 KB
testcase_02 AC 1 ms 256 KB
testcase_03 AC 1 ms 256 KB
testcase_04 AC 2 ms 384 KB
testcase_05 AC 1 ms 256 KB
testcase_06 AC 1 ms 256 KB
testcase_07 AC 1 ms 256 KB
testcase_08 AC 1 ms 256 KB
testcase_09 AC 1 ms 256 KB
testcase_10 AC 1 ms 256 KB
testcase_11 AC 1 ms 256 KB
testcase_12 AC 1 ms 256 KB
testcase_13 AC 1 ms 256 KB
testcase_14 AC 1 ms 256 KB
testcase_15 AC 2 ms 384 KB
testcase_16 AC 1 ms 256 KB