Submission #526080

#TimeUsernameProblemLanguageResultExecution timeMemory
526080eric00513씽크스몰 (kriii3_TT)C++17
Compilation error
0 ms0 KiB
#include <bits/stdc++.h> using namespace std; #define sz(x) (ll)(x).size() #define all(x) (x).begin(), (x).end() using ll = unsigned long long; using base = complex<long double>; const long double PI = acos(-1); void fft(vector<base>& a, bool inv) { ll n = sz(a); for (ll i = 1, j = 0; i < n; i++) { ll bit = n >> 1; while (j >= bit) j -= bit, bit >>= 1; j += bit; if (i < j) swap(a[i], a[j]); } for (ll len = 2; len <= n; len <<= 1) { vector<base> w(len / 2); for (ll i = 0; i < len / 2; i++) { long double ang = 2 * PI * i / len * (inv ? -1 : 1); w[i] = base(cos(ang), sin(ang)); } for (ll i = 0; i < n; i += len) { for (ll j = 0; j < len / 2; j++) { base u = a[i + j], v = a[i + j + len / 2] * w[j]; a[i + j] = u + v; a[i + j + len / 2] = u - v; } } } if (inv) for (ll i = 0; i < n; i++) a[i] /= n; } vector<ll> multiply(vector<ll>& a, vector<ll>& b) { vector<base> fa(all(a)), fb(all(b)); ll n = sz(fa); fft(fa, false); fft(fb, false); for (ll i = 0; i < n; i++) fa[i] *= fb[i]; fft(fa, true); vector<ll> ret(n); for (ll i = 0; i < n; i++) ret[i] = (ll)(fa[i].real() + (fa[i].real() > 0 ? 0.5 : -0.5)); return ret; } ll main() { cin.tie(0); ios_base::sync_with_stdio(0); ll n, m; cin >> n >> m; n++, m++; ll k = 1; while (k < 2 * max(n, m) - 1) k <<= 1; vector<ll> a(k), b(k); for (ll i = 0; i < n; i++) cin >> a[i]; for (ll i = 0; i < m; i++) cin >> b[i]; vector<ll> res = multiply(a, b); ll ans = 0; for (ll i = 0; i < n + m - 1; i++) ans ^= res[i]; cout << ans << '\n'; return 0; }

Compilation message (stderr)

tt.cpp:48:1: error: '::main' must return 'int'
   48 | ll main() {
      | ^~