// #pragma GCC optimize("Ofast")
// #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,fma")
// #pragma GCC optimize("unroll-loops")
#include "bits/stdc++.h"
// #include <ext/pb_ds/assoc_container.hpp>
// #include <ext/pb_ds/trie_policy.hpp>
// #include <ext/rope>
using namespace std;
// using namespace __gnu_pbds;
// using namespace __gnu_cxx;
#define li long long
#define ld long double
#define ii pair<int, int>
#define vi vector<int>
#define vvi vector<vi>
#define fi first
#define se second
#define mp make_pair
#define pb push_back
#define pf push_front
#define eb emplace_back
#define em emplace
#define ob pop_back
#define om pop
#define of pop_front
#define fr front
#define bc back
#define fori(i, a, b) for(int i = (int) (a); i <= (int) (b); ++i)
#define ford(i, a, b) for(int i = (int) (a); i >= (int) (b); --i)
#define all(x) begin(x), end(x)
#define sz(x) ((int)(x).size())
#define bitc __builtin_popcountll
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
#define rand rng
#define endl '\n'
//#define sp ' '
#define fastio() ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
void solve();
signed main() {
// freopen("input.inp","r",stdin);
// freopen("output.out","w",stdout);
fastio();
int tc = 1;
fori(test, 1, tc) {
solve();
}
return 0;
}
//#define int long long
const ld pi = 4 * atan(1.0), eps = 1e-9;
typedef struct vector<int> bigint;
bigint operator + (bigint a, bigint b) {
int len = max(a.size(), b.size());
a.resize(len, 0);
b.resize(len, 0);
bigint res(len + 1, 0);
int carry = 0;
fori(i, 0, len - 1) {
res[i] = a[i] + b[i] + carry;
if(res[i] >= 10) {
res[i] -= 10;
carry = 1;
}
else {
carry = 0;
}
}
if(res.back() == 0 and res.size() >= 2) res.pop_back();
return res;
}
string tos(bigint a) {
int len = a.size();
string res;
fori(i, 0, len - 1) {
res.push_back(char(a[i] + '0'));
}
return res;
}
bigint pw[505];
void solve() {
// int n, k;
// cin >> n >> k;
// pw[0] = vi(1, 1);
// fori(i,1, n) {
// pw[i] = pw[i - 1] + pw[i - 1];
// }
//
// cout << min(9, n - 1) << endl;
// fori(bit, 0, min(n - 2, 8) ) {
// cout << "A=(";
// bigint sum1 = vi(1, 0), sum0 = vi(1, 0);
// fori(i, 0, n - 1) {
// if(i / (1 << bit) & 1) {
// sum1 = sum1 + pw[i];
// }
// else {
// sum0 = sum0 + pw[i];
// }
// }
// cout << "(A&" << tos(sum0) << ")+((A&" << tos(sum1) << ")>>" << (1 << bit) << ")";
// cout << ")" << endl;
// }
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
204 KB |
Wrong output format. |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
1 ms |
204 KB |
Wrong output format. |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
0 ms |
204 KB |
Wrong output format. |
2 |
Halted |
0 ms |
0 KB |
- |
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
1 ms |
204 KB |
Wrong output format. |
2 |
Halted |
0 ms |
0 KB |
- |