#include<bits/stdc++.h> using ll = longlong; usingnamespace std; constint N=1e9+5; voidsolve(){ ll n; cin >> n; vector<int> a(n + 1); int ans = 0; for (int i = 1; i <= n; ++i) { a[i] = i; ans += i * (n - i + 1); } int cnt = 0; do { int sum = 0; for (int i = 1; i <= n; ++i) { int mn = 0x3f3f3f3f; for (int j = i; j <= n; ++j) { mn = min(mn, a[j]); sum += mn; } }
#include<bits/stdc++.h> using ll = longlong; usingnamespace std; constint N=1e9+5; voidsolve(){ ll n; cin >> n; vector<int> a(n + 1); int ans = 0; for (int i = 1; i <= n; ++i) { a[i] = i; ans += i * (n - i + 1); } int cnt = 0; do { int sum = 0; for (int i = 1; i <= n; ++i) { int mn = 0x3f3f3f3f; for (int j = i; j <= n; ++j) { mn = min(mn, a[j]); sum += mn; } }
#include<bits/stdc++.h> using ll = longlong; usingnamespace std;
voidsolve(){ ll n, k; cin >> n >> k; ll m = n; vector<int> a(n + 1);
ll sum = 1LL; for (int i = 1; i < n; ++i) { sum <<= 1LL; if (sum >= 1e12) { sum = 1e12; break; } }
if (k > sum) { cout << -1 << endl; return; } ll b = k - 1; //从0计数,减1 deque<ll> dq; dq.push_back(n); for (ll x = n - 1; x >= 1; --x) { if (b & 1LL) dq.push_back(x); else dq.push_front(x); b >>= 1; }