QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#563988 | #8836. Highway Hoax | ucup-team4435# | AC ✓ | 439ms | 37280kb | C++20 | 33.4kb | 2024-09-14 18:23:20 | 2024-09-14 18:23:20 |
Judging History
answer
#pragma GCC optimize("Ofast")
#include "bits/stdc++.h"
#define rep(i, n) for (int i = 0; i < (n); ++i)
#define rep1(i, n) for (int i = 1; i < (n); ++i)
#define rep1n(i, n) for (int i = 1; i <= (n); ++i)
#define repr(i, n) for (int i = (n) - 1; i >= 0; --i)
#define pb push_back
#define eb emplace_back
#define all(a) (a).begin(), (a).end()
#define rall(a) (a).rbegin(), (a).rend()
#define each(x, a) for (auto &x : a)
#define ar array
#define vec vector
#define range(i, n) rep(i, n)
using namespace std;
using ll = long long;
using ull = unsigned long long;
using ld = long double;
using str = string;
using pi = pair<int, int>;
using pl = pair<ll, ll>;
using vi = vector<int>;
using vl = vector<ll>;
using vpi = vector<pair<int, int>>;
using vvi = vector<vi>;
int Bit(int mask, int b) { return (mask >> b) & 1; }
template<class T>
bool ckmin(T &a, const T &b) {
if (b < a) {
a = b;
return true;
}
return false;
}
template<class T>
bool ckmax(T &a, const T &b) {
if (b > a) {
a = b;
return true;
}
return false;
}
// [l, r)
template<typename T, typename F>
T FindFirstTrue(T l, T r, const F &predicat) {
--l;
while (r - l > 1) {
T mid = l + (r - l) / 2;
if (predicat(mid)) {
r = mid;
} else {
l = mid;
}
}
return r;
}
template<typename T, typename F>
T FindLastFalse(T l, T r, const F &predicat) {
return FindFirstTrue(l, r, predicat) - 1;
}
const ll INF = 2e18;
const int INFi = 1e9;
const int LG = 49;
/*
! WARNING: MOD must be prime.
! WARNING: MOD must be less than 2^30.
* Use .get() to get the stored value.
*/
template<uint32_t mod>
class montgomery {
static_assert(mod < uint32_t(1) << 30, "mod < 2^30");
using mint = montgomery<mod>;
private:
uint32_t value;
static constexpr uint32_t inv_neg_mod = []() {
uint32_t x = mod;
for (int i = 0; i < 4; ++i) {
x *= uint32_t(2) - mod * x;
}
return -x;
}();
static_assert(mod * inv_neg_mod == -1);
static constexpr uint32_t neg_mod = (-uint64_t(mod)) % mod;
static uint32_t reduce(const uint64_t &value) {
return (value + uint64_t(uint32_t(value) * inv_neg_mod) * mod) >> 32;
}
inline static const mint ONE = mint(1);
public:
montgomery() : value(0) {}
montgomery(const mint &x) : value(x.value) {}
template<typename T, typename U = std::enable_if_t<std::is_integral<T>::value>>
montgomery(const T &x) : value(!x ? 0 : reduce(int64_t(x % int32_t(mod) + int32_t(mod)) * neg_mod)) {}
static constexpr uint32_t get_mod() {
return mod;
}
uint32_t get() const {
auto real_value = reduce(value);
return real_value < mod ? real_value : real_value - mod;
}
template<typename T>
mint power(T degree) const {
degree = (degree % int32_t(mod - 1) + int32_t(mod - 1)) % int32_t(mod - 1);
mint prod = 1, a = *this;
for (; degree > 0; degree >>= 1, a *= a)
if (degree & 1)
prod *= a;
return prod;
}
mint inv() const {
return power(-1);
}
mint& operator=(const mint &x) {
value = x.value;
return *this;
}
mint& operator+=(const mint &x) {
if (int32_t(value += x.value - (mod << 1)) < 0) {
value += mod << 1;
}
return *this;
}
mint& operator-=(const mint &x) {
if (int32_t(value -= x.value) < 0) {
value += mod << 1;
}
return *this;
}
mint& operator*=(const mint &x) {
value = reduce(uint64_t(value) * x.value);
return *this;
}
mint& operator/=(const mint &x) {
return *this *= x.inv();
}
friend mint operator+(const mint &x, const mint &y) {
return mint(x) += y;
}
friend mint operator-(const mint &x, const mint &y) {
return mint(x) -= y;
}
friend mint operator*(const mint &x, const mint &y) {
return mint(x) *= y;
}
friend mint operator/(const mint &x, const mint &y) {
return mint(x) /= y;
}
mint& operator++() {
return *this += ONE;
}
mint& operator--() {
return *this -= ONE;
}
mint operator++(int) {
mint prev = *this;
*this += ONE;
return prev;
}
mint operator--(int) {
mint prev = *this;
*this -= ONE;
return prev;
}
mint operator-() const {
return mint(0) - *this;
}
bool operator==(const mint &x) const {
return get() == x.get();
}
bool operator!=(const mint &x) const {
return get() != x.get();
}
bool operator<(const mint &x) const {
return get() < x.get();
}
template<typename T>
explicit operator T() {
return get();
}
friend std::istream& operator>>(std::istream &in, mint &x) {
std::string s;
in >> s;
x = 0;
bool neg = s[0] == '-';
for (const auto c : s)
if (c != '-')
x = x * 10 + (c - '0');
if (neg)
x *= -1;
return in;
}
friend std::ostream& operator<<(std::ostream &out, const mint &x) {
return out << x.get();
}
static int32_t primitive_root() {
if constexpr (mod == 1'000'000'007)
return 5;
if constexpr (mod == 998'244'353)
return 3;
if constexpr (mod == 786433)
return 10;
static int root = -1;
if (root != -1)
return root;
std::vector<int> primes;
int value = mod - 1;
for (int i = 2; i * i <= value; i++)
if (value % i == 0) {
primes.push_back(i);
while (value % i == 0)
value /= i;
}
if (value != 1)
primes.push_back(value);
for (int r = 2;; r++) {
bool ok = true;
for (auto p : primes)
if ((mint(r).power((mod - 1) / p)).get() == 1) {
ok = false;
break;
}
if (ok)
return root = r;
}
}
};
// constexpr uint32_t MOD = 1'000'000'007;
constexpr uint32_t MOD = 998'244'353;
using mint = montgomery<MOD>;
/*
! WARNING: (MOD - 1) must be divisible by (2n), where n is max degree of polynomials.
* Include static_modular_int or montgomery (faster) to use it.
* Don't need to care about precomputing primitive root.
* Use it like std::vector<mint> with extra methods.
*/
template<typename mint>
class polynom_t : public std::vector<mint> {
public:
static constexpr int RANK = __builtin_ctz(mint::get_mod() - 1);
static_assert(RANK >= 15, "MOD doesn't seem fft-friendly.");
using value_type = mint;
using std::vector<mint>::empty;
using std::vector<mint>::back;
using std::vector<mint>::pop_back;
using std::vector<mint>::size;
using std::vector<mint>::clear;
using std::vector<mint>::begin;
using std::vector<mint>::end;
private:
static constexpr int EVAL_BRUTE_SIZE = 1 << 4;
static constexpr int MUL_MIN_CUT = 20;
static constexpr int MUL_MAX_CUT = 1 << 6;
static constexpr int DIV_N_CUT = 1 << 7;
static constexpr int DIV_M_CUT = 1 << 6;
static constexpr int INV_BRUTE_FORCE_SIZE = 1 << 3;
class fft_precalc {
private:
std::vector<mint> inv_{0, 1};
public:
mint root;
// roots[x] = root.power((MOD - 1) / 2^x)
// inv_roots[x] = roots[x].inv()
std::array<mint, RANK> roots, inv_roots;
// inv_n[x] = 2^{-x}
std::array<mint, RANK> inv_l;
// r_transition[x] = root.power((MOD - 1) * (3 - 2^{x + 1}) / 2^{x + 2})
// inv_r_transition[x] = r_transition[x].inv()
std::array<mint, RANK> r_transition, inv_r_transition;
fft_precalc() {
root = mint::primitive_root();
for (int x = 0; x < RANK; x++) {
roots[x] = mint(root).power((mint::get_mod() - 1) >> x);
inv_roots[x] = roots[x].inv();
inv_l[x] = mint(1 << x).inv();
r_transition[x] = root.power(((mint::get_mod() - 1) >> (x + 2)) * (3 + (1 << (x + 1))));
inv_r_transition[x] = r_transition[x].inv();
}
}
mint inv(int x) {
for (int i = inv_.size(); i <= x; i++) {
inv_.push_back(-inv_[mint::get_mod() % i] * mint(mint::get_mod() / i));
}
return inv_[x];
}
};
inline static fft_precalc fft_data;
public:
/*
* Let r be the primitive root of the given MOD.
* Let rev(i) be the reversed i as a binary mask of size log(n).
* Let R[i] = r.power((MOD - 1) / a.size() * rev(i)).
* It replaces a[i] with a.eval(R[i]).
*/
static void fft(polynom_t<mint> &a) {
assert(!a.empty());
int n = a.size(), l = __builtin_ctz(n);
for (int len = 0; len < l; len++) {
int m = n >> (len + 1);
mint r = 1;
for (int i = 0; i < (1 << len); i++) {
// rot = r^((MOD - 1) / n * rev(2 * i))
int id = i << (l - len);
for (int j = 0; j < m; j++) {
auto u = a[id + j];
auto v = a[id + j + m] * r;
a[id + j] = u + v;
a[id + j + m] = u - v;
}
if (i + 1 < (1 << len)) {
r *= fft_data.r_transition[__builtin_ctz(~i)];
}
}
}
}
// inv_fft(fft(a)) = a
static void inv_fft(polynom_t<mint> &a) {
assert(!a.empty());
int n = a.size(), l = __builtin_ctz(n);
for (int len = l - 1; len >= 0; len--) {
int m = n >> (len + 1);
mint ir = 1;
for (int i = 0; i < (1 << len); i++) {
int id = i << (l - len);
for (int j = 0; j < m; j++) {
auto u = a[id + j];
auto v = a[id + j + m];
a[id + j] = u + v;
a[id + j + m] = (u - v) * ir;
}
if (i + 1 < (1 << len)) {
ir *= fft_data.inv_r_transition[__builtin_ctz(~i)];
}
}
}
for (auto &value : a) {
value *= fft_data.inv_l[l];
}
}
private:
// Completes fft assuming that a is the right half of the polynomial after the first iteration of the fft.
static void right_half_fft(polynom_t<mint> &a) {
assert(!a.empty());
int n = a.size(), l = __builtin_ctz(n);
for (int len = 0; len < l; len++) {
int m = n >> (len + 1);
mint r = fft_data.roots[len + 2];
for (int i = 0; i < (1 << len); i++) {
int id = i << (l - len);
for (int j = 0; j < m; j++) {
auto u = a[id + j];
auto v = a[id + j + m] * r;
a[id + j] = u + v;
a[id + j + m] = u - v;
}
if (i + 1 < (1 << len)) {
r *= fft_data.r_transition[__builtin_ctz(~i)];
}
}
}
}
// inv_right_half_fft(right_half_fft(a)) = a
static void inv_right_half_fft(polynom_t<mint> &a) {
assert(!a.empty());
int n = a.size(), l = __builtin_ctz(n);
for (int len = l - 1; len >= 0; len--) {
int m = n >> (len + 1);
mint ir = fft_data.inv_roots[len + 2];
for (int i = 0; i < (1 << len); i++) {
int id = i << (l - len);
for (int j = 0; j < m; j++) {
auto u = a[id + j];
auto v = a[id + j + m];
a[id + j] = u + v;
a[id + j + m] = (u - v) * ir;
}
if (i + 1 < (1 << len)) {
ir *= fft_data.inv_r_transition[__builtin_ctz(~i)];
}
}
}
for (auto &value : a) {
value *= fft_data.inv_l[l];
}
}
class multipoint_evaluation_tree {
private:
int n_points, l;
std::vector<polynom_t<mint>> segtree;
public:
multipoint_evaluation_tree(int n, const std::vector<mint> &points) : n_points(points.size()), l(1) {
while ((1 << l) < n) {
l++;
}
polynom_t<mint> aux;
aux.reserve(1 << l);
segtree.assign(l + 1, polynom_t<mint>(1 << (l + 1)));
for (int i = 0; i < (1 << l); i++) {
aux = {i < n_points ? -points[i] : 0, 1};
fft(aux);
segtree[0][i << 1] = aux[0];
segtree[0][i << 1 | 1] = aux[1];
}
for (int len = 0; len < l; len++) {
aux.resize(1 << (len + 1));
for (int i = 0; i < (1 << (l + 1)); i += (1 << (len + 2))) {
for (int j = 0; j < static_cast<int>(aux.size()); j++) {
aux[j] = segtree[len][i + j] * segtree[len][i + j + aux.size()];
}
if (len + 1 < l) {
std::copy(aux.begin(), aux.end(), segtree[len + 1].begin() + i);
inv_fft(aux);
aux[0] -= 2;
right_half_fft(aux);
std::copy(aux.begin(), aux.end(), segtree[len + 1].begin() + i + aux.size());
} else {
inv_fft(aux);
aux[0]--;
std::copy(aux.begin(), aux.end(), segtree[len + 1].begin() + i);
segtree[len + 1][1 << (len + 1)]++;
}
}
}
}
std::vector<mint> evaluate(polynom_t<mint> f) const {
if (static_cast<int>(f.size()) > (1 << l)) {
f %= segtree[l];
}
assert(static_cast<int>(f.size()) <= (1 << l));
f.resize(1 << (l + 1));
std::rotate(f.begin(), std::prev(f.end()), f.end());
fft(f);
auto g = segtree[l];
std::reverse(g.begin(), g.begin() + 1 + (1 << l));
g.resize(1 << l);
g = g.inv(1 << l);
std::reverse(g.begin(), g.end());
g.resize(1 << (l + 1));
fft(g);
for (int i = 0; i < (1 << (l + 1)); i++) {
g[i] *= f[i];
}
polynom_t<mint> aux;
aux.reserve(1 << l);
for (int len = l - 1; len >= 0; len--) {
aux.resize(1 << (len + 1));
for (int i = 0; i < (1 << (l + 1)); i += (1 << (len + 2))) {
for (int j = 0; j < static_cast<int>(aux.size()); j++) {
aux[j] = g[i + j + (1 << (len + 1))];
}
inv_right_half_fft(aux);
fft(aux);
std::copy(aux.begin(), aux.end(), g.begin() + i + (1 << (len + 1)));
for (int j = 0; j < (1 << (len + 1)); j++) {
auto x = g[i + j] - g[i + j + (1 << (len + 1))];
g[i + j + (1 << (len + 1))] = x * segtree[len][i + j];
g[i + j] = x * segtree[len][i + j + (1 << (len + 1))];
}
}
}
std::vector<mint> eval(n_points);
for (int i = 0; i < n_points; i++) {
eval[i] = (g[2 * i] - g[2 * i + 1]) * fft_data.inv_l[l + 1];
}
return eval;
}
polynom_t<mint> interpolate(const std::vector<mint> &y) const {
auto prod = segtree[l];
prod.erase(prod.begin(), prod.begin() + ((1 << l) - n_points));
auto values = evaluate(prod.derivative());
polynom_t<mint> aux;
aux.reserve(1 << l);
polynom_t<mint> result(1 << (l + 1));
for (int i = 0; i < (1 << l); i++) {
aux = {i < n_points ? y[i] / values[i] : 0, 0};
fft(aux);
result[i << 1] = aux[0];
result[i << 1 | 1] = aux[1];
}
polynom_t<mint> next(1 << (l + 1));
for (int len = 0; len < l; len++) {
aux.resize(1 << (len + 1));
for (int i = 0; i < (1 << (l + 1)); i += (1 << (len + 2))) {
for (int j = 0; j < (1 << (len + 1)); j++) {
aux[j] = segtree[len][i + j] * result[i + j + aux.size()]
+ segtree[len][i + j + aux.size()] * result[i + j];
}
if (len + 1 < l) {
std::copy(aux.begin(), aux.end(), next.begin() + i);
inv_fft(aux);
right_half_fft(aux);
std::copy(aux.begin(), aux.end(), next.begin() + i + (1 << (len + 1)));
} else {
inv_fft(aux);
std::copy(aux.begin(), aux.end(), next.begin());
}
}
result.swap(next);
}
result.erase(result.begin(), result.begin() + ((1 << l) - n_points));
return result.resize(n_points);
}
};
public:
polynom_t() : std::vector<mint>() {}
polynom_t(size_t n, mint value = 0) : std::vector<mint>(n, value) {}
polynom_t(std::initializer_list<mint> values) : std::vector<mint>(values.begin(), values.end()) {}
template<typename Iterator>
polynom_t(Iterator first, Iterator last) : std::vector<mint>(first, last) {}
polynom_t<mint>& resize(int n) {
std::vector<mint>::resize(n);
return *this;
}
// Removes extra zeroes.
void normalize() {
while (!empty() && back() == mint(0)) {
pop_back();
}
}
// Returns -1 if all coefficients are zeroes (not O(1)!).
int degree() const {
int deg = static_cast<int>(size()) - 1;
while (deg >= 0 && (*this)[deg] == mint(0)) {
deg--;
}
return deg;
}
mint eval(const mint &x) const {
mint power = 1, value = 0;
for (int i = 0; i < static_cast<int>(size()); i++, power *= x) {
value += (*this)[i] * power;
}
return value;
}
// Calculates eval at the given points.
// O(n log^2).
std::vector<mint> multipoint_evaluation(const std::vector<mint> &points) const {
if (std::min(size(), points.size()) <= EVAL_BRUTE_SIZE) {
std::vector<mint> eval(points.size());
for (int i = 0; i < static_cast<int>(points.size()); i++) {
eval[i] = this->eval(points[i]);
}
return eval;
}
return multipoint_evaluation_tree(std::max(size(), points.size()), points).evaluate(*this);
}
// Interpolates polynomial f, such that f(x[i]) = y[i].
// O(n log^2).
static polynom_t<mint> interpolate(const std::vector<mint> &x, const std::vector<mint> &y) {
assert(x.size() == y.size());
return multipoint_evaluation_tree(x.size(), x).interpolate(y);
}
polynom_t<mint> operator-() const {
return polynom_t(*this) * mint(-1);
}
polynom_t<mint>& operator+=(const polynom_t<mint> &another) {
if (size() < another.size()) {
resize(another.size());
}
for (int i = 0; i < static_cast<int>(another.size()); i++) {
(*this)[i] += another[i];
}
return *this;
}
polynom_t<mint>& operator-=(const polynom_t<mint> &another) {
if (size() < another.size()) {
resize(another.size());
}
for (int i = 0; i < static_cast<int>(another.size()); i++) {
(*this)[i] -= another[i];
}
return *this;
}
polynom_t<mint>& operator*=(const polynom_t<mint> &another) {
if (empty() || another.empty()) {
clear();
return *this;
}
if (std::min(size(), another.size()) <= MUL_MIN_CUT
|| std::max(size(), another.size()) <= MUL_MAX_CUT) {
polynom_t<mint> product(int(size() + another.size()) - 1);
for (int i = 0; i < static_cast<int>(size()); i++) {
for (int j = 0; j < static_cast<int>(another.size()); j++) {
product[i + j] += (*this)[i] * another[j];
}
}
product.swap(*this);
return *this;
}
int real_size = static_cast<int>(size() + another.size()) - 1, n = 1;
while (n < real_size) {
n <<= 1;
}
if ((*this) == another) {
resize(n);
fft(*this);
for (int i = 0; i < n; i++) {
(*this)[i] *= (*this)[i];
}
} else {
resize(n);
polynom_t b = another;
b.resize(n);
fft(*this), fft(b);
for (int i = 0; i < n; i++) {
(*this)[i] *= b[i];
}
}
inv_fft(*this);
return resize(real_size);
}
// Division with remainder.
// O(n log).
polynom_t<mint>& operator/=(const polynom_t<mint> &another) {
polynom_t<mint> a(*this), b(another);
a.normalize(), b.normalize();
assert(!b.empty());
int n = a.size(), m = b.size();
if (n < m) {
return *this = {};
}
if (n <= DIV_N_CUT || m <= DIV_M_CUT) {
polynom_t<mint> quotient(n - m + 1);
mint inv_b = mint(1) / b.back();
for (int i = n - 1; i >= m - 1; i--) {
int pos = i - m + 1;
quotient[pos] = a[i] * inv_b;
for (int j = 0; j < m; j++) {
a[pos + j] -= b[j] * quotient[pos];
}
}
quotient.normalize();
return *this = quotient;
}
std::reverse(a.begin(), a.end());
std::reverse(b.begin(), b.end());
polynom_t<mint> quotient = a * b.inv(n - m + 1);
quotient.resize(n - m + 1);
std::reverse(quotient.begin(), quotient.end());
quotient.normalize();
return *this = quotient;
}
// O(n log).
polynom_t<mint>& operator%=(const polynom_t<mint> &another) {
*this -= (*this) / another * another;
normalize();
return *this;
}
// Returns derivative.
// O(n).
polynom_t<mint> derivative() const {
polynom_t<mint> der(std::max(0, static_cast<int>(size()) - 1));
for (int i = 0; i < static_cast<int>(der.size()); i++) {
der[i] = mint(i + 1) * (*this)[i + 1];
}
return der;
}
// Returns integral.
// O(n).
polynom_t<mint> integral(const mint &constant = mint(0)) const {
polynom_t<mint> in(size() + 1);
in[0] = constant;
for (int i = 1; i < static_cast<int>(in.size()); i++) {
in[i] = (*this)[i - 1] * fft_data.inv(i);
}
return in;
}
// Returns p^{-1} modulo x^{degree}.
// O(n log).
polynom_t<mint> inv(int degree) const {
assert(!empty() && (*this)[0] != mint(0) && "polynom is not invertable");
int result_size = 1;
while (result_size < degree) {
result_size <<= 1;
}
polynom_t<mint> inv(result_size);
inv[0] = (*this)[0].inv();
int brute_calculation = std::min(degree, INV_BRUTE_FORCE_SIZE);
mint start_inv = (*this)[0].inv();
polynom_t<mint> have(brute_calculation);
for (int i = 0; i < brute_calculation; i++) {
inv[i] = ((i == 0 ? 1 : 0) - have[i]) * start_inv;
int steps = std::min<int>(size(), have.size() - i);
for (int j = 0; j < steps; j++) {
have[i + j] += inv[i] * (*this)[j];
}
}
polynom_t<mint> this_copy, inv_copy;
this_copy.reserve(result_size);
inv_copy.reserve(result_size);
for (int power = brute_calculation; power < degree; power <<= 1) {
this_copy.resize(power << 1);
std::fill(this_copy.begin() + std::min<int>(size(), power << 1), this_copy.end(), 0);
std::copy(begin(), begin() + std::min<int>(size(), power << 1), this_copy.begin());
inv_copy.resize(power << 1);
std::copy(inv.begin(), inv.begin() + power, inv_copy.begin());
fft(this_copy);
fft(inv_copy);
for (int i = 0; i < (power << 1); i++) {
this_copy[i] *= inv_copy[i];
}
inv_fft(this_copy);
std::fill(this_copy.begin(), this_copy.begin() + power, 0);
fft(this_copy);
for (int i = 0; i < (power << 1); i++) {
this_copy[i] *= inv_copy[i];
}
inv_fft(this_copy);
for (int i = power; i < (power << 1); i++) {
inv[i] = -this_copy[i];
}
}
return inv.resize(degree);
}
// Returns log(p) modulo x^{degree}.
// O(n log).
polynom_t<mint> log(int degree) const {
assert(!empty() && (*this)[0] == mint(1) && "log is not defined");
return (derivative().resize(std::min<int>(degree, size())) * inv(degree)).resize(degree).integral(mint(0)).resize(degree);
}
// Returns exp(p) modulo x^{degree}.
// O(n log).
polynom_t<mint> exp(int degree) const {
assert(!empty() && (*this)[0] == mint(0) && "exp is not defined");
int result_size = 1;
while (result_size < degree) {
result_size <<= 1;
}
polynom_t<mint> exp, exp_fft, inv_exp, inv_exp_fft;
exp = exp_fft = inv_exp = inv_exp_fft = {1};
polynom_t<mint> h(1), q(1);
auto diff = derivative().resize(result_size);
for (int power = 1; power < degree; power <<= 1) {
exp_fft = polynom_t<mint>(exp).resize(power << 1);
fft(exp_fft);
for (int i = 0; i < power; i++) {
h[i] = exp_fft[i] * inv_exp_fft[i];
}
inv_fft(h);
std::fill(h.begin(), h.begin() + ((power + 1) >> 1), 0);
fft(h);
for (int i = 0; i < power; i++) {
h[i] *= -inv_exp_fft[i];
}
inv_fft(h);
for (int i = (power + 1) / 2; i < power; i++) {
inv_exp.push_back(h[i]);
}
inv_exp_fft = polynom_t<mint>(inv_exp).resize(power << 1);
fft(inv_exp_fft);
h.assign(power, 0);
std::copy(diff.begin(), diff.begin() + power - 1, h.begin());
fft(h);
for (int i = 0; i < power; i++) {
q[i] = exp_fft[i] * h[i];
}
inv_fft(q);
h.resize(power << 1);
for (int i = 1; i < power; i++) {
h[i] = exp[i] * i;
}
for (int i = 0; i < power; i++) {
h[i + 1] -= q[i];
}
h[0] = -q[power - 1];
fft(h);
q.resize(power << 1);
for (int i = 0; i < (power << 1); i++) {
q[i] = inv_exp_fft[i] * h[i];
}
inv_fft(q);
if (static_cast<int>(size()) >= power) {
h.assign(begin() + power, begin() + std::min<int>(power << 1, size()));
} else {
h.clear();
}
h.resize(power);
for (int i = power - 1; i >= 0; i--) {
h[i] -= q[i] * fft_data.inv(i + power);
}
h.resize(power << 1);
fft(h);
for (int i = 0; i < (power << 1); i++) {
q[i] = exp_fft[i] * h[i];
}
inv_fft(q);
exp.resize(power << 1);
for (int i = 0; i < power; i++) {
exp[power + i] = q[i];
}
}
return exp.resize(degree);
}
// Returns p^{d} modulo x^{degree}.
// O(n log).
polynom_t<mint> power(int64_t d, int degree) const {
if (!d || !degree) {
return polynom_t<mint>{1}.resize(degree);
}
int pos = 0;
while (pos < static_cast<int>(size()) && (*this)[pos] == mint(0)) {
pos++;
}
if (pos == static_cast<int>(size()) || pos >= (degree + d - 1) / d) {
return polynom_t<mint>(degree);
}
int coeffs_left = degree - d * pos;
polynom_t<mint> result = ((polynom_t<mint>(begin() + pos, end()) / (*this)[pos]).log(coeffs_left)
* mint(d)).exp(coeffs_left) * (*this)[pos].power(d);
result.resize(degree);
for (int i = degree - 1; i - (degree - coeffs_left) >= 0; i--) {
result[i] = result[i - (degree - coeffs_left)];
}
std::fill(result.begin(), result.end() - coeffs_left, mint(0));
return result;
}
template<typename V>
std::enable_if_t<!std::is_same_v<V, polynom_t<mint>>, polynom_t<mint>&> operator*=(const V &value) {
for (auto &x : *this) {
x *= value;
}
return *this;
}
template<typename V>
std::enable_if_t<!std::is_same_v<V, polynom_t<mint>>, polynom_t<mint>&> operator/=(const V &value) {
for (auto &x : *this) {
x /= value;
}
return *this;
}
friend std::ostream& operator<<(std::ostream &out, const polynom_t<mint> &p) {
for (int i = 0; i < static_cast<int>(p.size()); i++) {
if (i) out << ' ';
out << p[i];
}
return out;
}
friend polynom_t<mint> operator+(const polynom_t<mint> &p, const polynom_t<mint> &q) {
return polynom_t(p) += q;
}
friend polynom_t<mint> operator-(const polynom_t<mint> &p, const polynom_t<mint> &q) {
return polynom_t(p) -= q;
}
friend polynom_t<mint> operator*(const polynom_t<mint> &p, const polynom_t<mint> &q) {
return polynom_t(p) *= q;
}
friend polynom_t<mint> operator/(const polynom_t<mint> &p, const polynom_t<mint> &q) {
return polynom_t(p) /= q;
}
friend polynom_t<mint> operator%(const polynom_t<mint> &p, const polynom_t<mint> &q) {
return polynom_t(p) %= q;
}
template<typename V>
friend std::enable_if_t<!std::is_same_v<V, polynom_t<mint>>, polynom_t<mint>>
operator*(const V &value, const polynom_t<mint> &p) {
return polynom_t<mint>(p) *= value;
}
template<typename V>
friend std::enable_if_t<!std::is_same_v<V, polynom_t<mint>>, polynom_t<mint>>
operator*(const polynom_t<mint> &p, const V &value) {
return polynom_t<mint>(p) *= value;
}
template<typename V>
friend std::enable_if_t<!std::is_same_v<V, polynom_t<mint>>, polynom_t<mint>>
operator/(const V &value, const polynom_t<mint> &p) {
return polynom_t<mint>(p) /= value;
}
template<typename V>
friend std::enable_if_t<!std::is_same_v<V, polynom_t<mint>>, polynom_t<mint>>
operator/(const polynom_t<mint> &p, const V &value) {
return polynom_t<mint>(p) /= value;
}
};
using polynom = polynom_t<mint>;
string s;
const int N = 2e5 + 5;
vpi g[N];
mint dp[N][2];
polynom mul(vector<polynom> &pp, int l, int r) {
if (l + 1 == r) {
return pp[l];
}
int m = (l + r) >> 1;
return mul(pp, l, m) * mul(pp, m, r);
}
// ok = 1 p->v
// ok = 0 v->p
void dfs(int v, int p, int ok) {
vector<polynom> pp;
int q = 0;
for(auto &[u, tp] : g[v]) {
if (u == p) continue;
dfs(u, v, tp);
q++;
polynom po = {0, 0, 0};
po[1] = dp[u][0];
char w = (tp == 1 ? 'F' : 'S');
if (s[v] != w) {
po[2] = dp[u][1];
} else {
po[0] = dp[u][1];
}
pp.push_back(po);
}
polynom res;
if (pp.empty()) {
res = {1};
} else {
res = mul(pp, 0, pp.size());
}
res.resize(q + 3);
{
dp[v][0] += res[q] + res[q + 1];
}
char need = (ok ? 'F' : 'S');
if (s[v] == need) {
dp[v][1] += res[q] + (q > 0 ? res[q - 1] : 0);
} else {
dp[v][1] += res[q + 1] + res[q + 2];
}
// cerr << v << ' ' << dp[v][0] << '\n';
}
void solve() {
int n; cin >> n;
cin >> s;
rep(_, n - 1) {
int u, v; cin >> u >> v;
u--;
v--;
g[u].emplace_back(v, 1);
g[v].emplace_back(u, 0);
}
dfs(0, -1, 0);
cout << dp[0][0] << '\n';
}
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(0);
cout << setprecision(12) << fixed;
int t = 1;
// cin >> t;
rep(i, t) {
solve();
}
return 0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 2ms
memory: 5128kb
input:
5 SFSFS 2 1 2 3 4 3 4 5
output:
1
result:
ok 1 number(s): "1"
Test #2:
score: 0
Accepted
time: 0ms
memory: 5800kb
input:
4 SFFF 1 2 1 3 1 4
output:
4
result:
ok 1 number(s): "4"
Test #3:
score: 0
Accepted
time: 0ms
memory: 5164kb
input:
7 SSSSFFF 1 2 3 2 4 3 4 5 4 6 2 7
output:
13
result:
ok 1 number(s): "13"
Test #4:
score: 0
Accepted
time: 2ms
memory: 6904kb
input:
2 FS 1 2
output:
1
result:
ok 1 number(s): "1"
Test #5:
score: 0
Accepted
time: 2ms
memory: 6036kb
input:
3 FFF 3 1 3 2
output:
1
result:
ok 1 number(s): "1"
Test #6:
score: 0
Accepted
time: 0ms
memory: 7380kb
input:
4 FFFF 1 2 4 2 2 3
output:
1
result:
ok 1 number(s): "1"
Test #7:
score: 0
Accepted
time: 2ms
memory: 5672kb
input:
5 FFFFF 4 2 2 1 3 1 3 5
output:
1
result:
ok 1 number(s): "1"
Test #8:
score: 0
Accepted
time: 2ms
memory: 6576kb
input:
6 FSSSSF 5 3 2 5 1 2 2 6 4 2
output:
3
result:
ok 1 number(s): "3"
Test #9:
score: 0
Accepted
time: 349ms
memory: 37280kb
input:
199995 FSSFFFSSSFSFFSSSFSSSSSFSFSSSFSFFSSFSFSFFFSSSFSSFSFFSFFFFSSFFSSSFFSFSFFFFFFFFFFFFFSSSFSSFFFSSSFSFSSSFFFSFFSFSSSSFSFSFSFSSFFSFSFFSFFSSFSSSFSFFSSSFFSFFFSFFSFSFSFSFSSSFSSSSFFSSFFFFFSFSSSFFSSSSSSSSFFFSFSFFSSSFSFFFFFSFFFFSSSSSSSFFFSFFSFSSSFSFSFFFFSFSSFSSFFFSSFFFSSFSFFFSSSFSFSSFFSFSFFSFFSSFSFSSSSFFF...
output:
233157276
result:
ok 1 number(s): "233157276"
Test #10:
score: 0
Accepted
time: 325ms
memory: 37088kb
input:
199996 FSSFFSFSSSFFFFFFSFSSFSFFSSFFFFFFFSSSFFSFSSFSSFSFSSFSSSFFFFSFFFFFFSSSSFFFSFSSFSSFFSSFSFFSSSSSFSFFFFSFSFFSFSSFSFSSSSSFSFSSSFFSSFSSFSFFSFFSSFSFSSFSSSFSSSFFSSFFFFSFFSFSFSFFFSFSSSFFSFFSSSSSSSSFSSFSSFSSSSFSSSFSSSFSFFFFFFSFFSSSFSSFFFSFSFSFSSSFSFFSSSSFSSFSFSSFSSFSFFFSSSFFSSFSFSFFSSSFFFFSSSSSSSFSSSFFF...
output:
509139031
result:
ok 1 number(s): "509139031"
Test #11:
score: 0
Accepted
time: 330ms
memory: 36244kb
input:
199997 FFSSSFSSFSFSFSSSSFSFFSSFFFSSFFSSSSSSFSSSFFSSSFFFSFFSFSFSSSFFSSSFSFFFFFSSFFSSFFFFSSSFFFFSSSSFFFSSFFSSSFSFFSFSFSFSFFSSFSFSSSFSSFSSFSFFSSFFFSFSSFSFFSSSFSFFSFFFFSSFFSFSFFFSFSFFSFSFSFFSSFFFSSFSFFSFSSSSSFFFFFSSSSSSSSSFFFFSSFFFSSFFSFSFSSSFSFSFFSSSSFSFSFFFSSFSSFFSFFSSFSSSSSSSFSSSFSSSFSFSSSSFSFFSSSFSS...
output:
917209642
result:
ok 1 number(s): "917209642"
Test #12:
score: 0
Accepted
time: 341ms
memory: 36328kb
input:
199998 FFFSSSSSFSSSFFFFFFSSSSFSSFFFSFSSFFFSFFFFSFFFFFFFSSSFFSFSFFSFSFSFFSSFSFFSFSFSFSFFSSFFSFFFSFSFSSSSFSSSFFFSSSSFFSFFFFSFFFFFFSFSSFSFSSFFSSFSFFSFSSFSFSSFSSSSFSSFFSSFSSSSSSSSFFSFFSSSSSSSSSSSSFFSSFFFFFFSSFFSFFFFSSFFFSFFSSFFFFFFFFSFSSFSSSSFFSFSFFSSSSFSFSFFFSSFSFFFSFFSSFFSSSSSSSFSSSFFFSSFSSSSSFFFFSFSF...
output:
722227522
result:
ok 1 number(s): "722227522"
Test #13:
score: 0
Accepted
time: 338ms
memory: 36336kb
input:
199999 FSFSFSFSSFSSSFSSFFSFSFFFFFFSSFSSSFSFSSFFSSSFSSSFSSSFSFFSFSFFFFFFSFFFSFSSSSSSFFSFFSFFFFFFFSSSFFFSFFSSSFSFSSSSSFSSFSFSFFSFSFFSSFSFSSFFSFSSSSSSSSSSSFFSSSSSFSFFFSFFSFFFSFFFFFSFFFFSSSSSSSFFFFSFFSSSFSFSSFFFFSSFSFSFSSSFSSSSFSSFSFFSFFFSSFSSFFFSFSFFFSFFFFSFSFSSSSSSSFFSSFFFSSFSSSSSFSSSFFFFFSFSSSFFFSFFS...
output:
22915769
result:
ok 1 number(s): "22915769"
Test #14:
score: 0
Accepted
time: 342ms
memory: 37020kb
input:
200000 SFSSSSFSFFSFFFSFSFSSSSSSSSFFSSSFFSFFSSFFFFFFFFFFSSFFFFFFFSFFSFFFFFSSSFFFSFFSFFFFFSSFFSFFFFSSSFSFFSFSSFSFFFFFFFSFFSSFSSFSSFFSSFSSSSSFSSSSFFSFFFFFSSFSFFSFFFSSSSFFSFFFFFSSSSSSFFFSFFSFFFSFFFFFFSSSFSFFFFFSFSSSFFSSSFSFSFSSSFFFFFSSFFFSFSFFFSFSSSSSFSFFSFSSFFSSFSFFFFFSSFSFSFFFSSSFSFFFFSSSSFFFSSFFSFSFS...
output:
246807982
result:
ok 1 number(s): "246807982"
Test #15:
score: 0
Accepted
time: 427ms
memory: 29308kb
input:
199980 SFSFFSSSSSFSSSFFFSSSSFFSSFSSSSFFFFSSFFSSFFFFSFSSFFSSSSSFFFSSSSFFFFFFFSFFSFSSSFSFFFFSFSFFSFSFFSFSFSFSFFSSSSFFSSFSSFFFFSFSFFFFFSSSFSFFFFFFSFFSSSFFSSSFFSSSFSFSFSSSFSSSFSSSSSFSFFFSSSFSSSFFSFSFSFFFSSSSFSSSFSSFSSSFFFFFSFFSFFFFSSSFFSSFFSSSFSSSFSSSFSSFSFSSFSFSFFSSSSFSSFSSSSSSSFSSSSSSSFSSSSSFFSFFFSFFS...
output:
854698427
result:
ok 1 number(s): "854698427"
Test #16:
score: 0
Accepted
time: 326ms
memory: 29132kb
input:
199981 SFFSSFSSFSSSFSSSFSSFSFSSFFFFFFFFSFFFFFSFFFSSFSFSFFSSFSFFFFFSFFFFSSSFFSSFSSFSSSFFSFFSSSFFSSSFSFSSFFFSSFFFSSSSFFSFSFFSFSSFSFSFSFSSSSFFSSSSFSSFSSSSFSFSSSFSFSFFFSSSFSFSFFFFSSSSSSFFSSFSSFSFSFFSFFSSSSSSFFSFFSFFSSFFSFSFSFSFSSSFFSFFFSSFFSSFFFFSSFSSFSSSSSFFSSSFFSSFFSFFFSSSSSFSSFFSFSFFSFFSFSSSFFFSFSSSS...
output:
990783292
result:
ok 1 number(s): "990783292"
Test #17:
score: 0
Accepted
time: 306ms
memory: 24732kb
input:
199982 SFFSSSFSFSSSFFFFSSFFFFSFSSSSFFFSFSFFSSFFSSFSSSFSFSFSSFFSSSSSFSSFSFFFSSFSFSSSSSSFSSFSFSFSFFSSSSFSFSSSSFSSSSSFSSSSSSFSFFSFSSSFSFSSSFFFSFSSSFSSSFFFSSFFSSFSSFSFFSSSSSFSSSFFSFSFSFSFSFFSSFFSFFFSSSFSFFFSFFSSSFSSSFSSSFSFSSSFFSSSSFSFSFFSFFSFSSFSSFFFSFFFSFFFSSFSFFSFSSSFSSFFSSFSSFSSSSSSSSFFFSSFFFFSFFSSF...
output:
535880887
result:
ok 1 number(s): "535880887"
Test #18:
score: 0
Accepted
time: 334ms
memory: 31040kb
input:
199983 SSFSFFSSSFFFFSSSSSFSFFFSFSFFSFSSSSSFSFFSFSSFFSSSFFFSFFFSFFFFSFFSFFSFFSSSSSSSSFFSFSSFSSFSFFFSFFSFFSSSFFFFFSFSSFSFFFFFSFFFFFSSSFSFSFSSSSSFSSFSSSSSFSSSFSFSSSFFFFSSFSSFSSSSSFFFFSSFFSSSSSSFFSSFFSFFFSFFSFSFSFFSFFFSFSFFFSFSSFFSFFFSSSFSFFSSSSFSSSFFSSFSFSFFFFFFFSSSSSFFFSSSSSSSSFFFFSFFSSSFSSFSFSFSSFSFS...
output:
29372676
result:
ok 1 number(s): "29372676"
Test #19:
score: 0
Accepted
time: 413ms
memory: 27520kb
input:
199984 SSSFFSSSSFFFFFFFFFFFSSSFSSSSSSSFSSFFSSFFSFFFFFSSFSFFFFFSSSSFFSSSSSFSSSFSFSFFSSSSFSSFFSSFFSFFSSSFSFSFSFSSFSSFFFFSFFFSSSSSFFSSSFSFFFSSFFFSFFSFSSSSFSFSSFSFSFSFFFSSFFFFFFFFSSFSFFFSFSSSSFFSFSSFSFSFSFSFSSSSSSSFFFSFSSSFFSSFFFFSSFSSFFSFFSSSSFFFFFSSSSSFFFSSSFSSFFSFFSFFSFSFSSSSFFSFSSFSFFFSSSFFFFFFSFSFF...
output:
525200447
result:
ok 1 number(s): "525200447"
Test #20:
score: 0
Accepted
time: 311ms
memory: 27140kb
input:
199985 SSSFSSFSFFFFSFSFFFFSFSSSFSFFSSSFFFSFSFSFSFSSSFFSFSFFSSFFFFFFFFFSFFSSFSSFSFSFSFFSSSFFSSSFSFFFFFFFSSSFFFFFSSSSFSFFFSFFFSSSSSSSSFFSFFSSFFFSSSFSSFFFSSFFSFSFSSSFSFFSSFFFFSFFSFSSSSFSFFSSSSSFFSFSFFFSSSFFSSSFFFSSFSFFFSFFFFFSFFSFFSSSFSFFFSSSFSSFFFSSFFSSFSSSSFFFFFSSFFSFSFFFSSFFFFFSFSSFFFFSSSFFFSFFSFSFF...
output:
497376383
result:
ok 1 number(s): "497376383"
Test #21:
score: 0
Accepted
time: 325ms
memory: 36124kb
input:
199986 SFSSSFSSFFSSSSFSFFFFFSFSSFFSFSSSSFSFFSSSFSFSFSFSFFSFFSFFFSSFSSSSSFSSSSSFFFSFFSSSFSFFSSSSSFFSFSSFSSSFSFSFSSFFSFSFFFFSFFFSSSFSFFFSFSSSFSFFFSSFSSSSFSSSFFSFFFFFSFFSFFSSSSSSSFSSSFSFSFSSSSFSFSSFSSSFFSFFFFFSFFFSFSSSSSSFSFSFSSFFSSFSSSFFSFSFFFSFFSSSFFFFSFFSFFFSFSFSSFFFFSSSSSSFFFSSSSFSFSSFFSFSFFSFFFFSS...
output:
494235109
result:
ok 1 number(s): "494235109"
Test #22:
score: 0
Accepted
time: 334ms
memory: 27588kb
input:
199987 FFFSSSSSSSSSSFSFSFFFSFSFFFSFFSSSFFFSFFFFSSSFFSSSFSSFSSFSSFFFFSFSSSFFFSFFSFFFFFFSFSFFFSSSSSFSSFFSSFSFFFFSFSSSSFSSFFFFFFFSFFFSFSFSFSSFSFSSFFFSSSFSFFSFSFFFFSSFSSFSFFFSSFSFSSFFFSSFSSFSSFFFFSSFFSFFSFSFFFFFFSSFFSFSFSFFSFFSFSFFFFSSSFSSSFSFFSSFSFFFSSFSSSFFSSSFFFFFSFFFSSSFSSSFFFFSFSSFFSFFFSFFFSSFFFFSF...
output:
390614605
result:
ok 1 number(s): "390614605"
Test #23:
score: 0
Accepted
time: 321ms
memory: 30732kb
input:
199988 FFFSFFFSSSFSSSFSSFFSSFFSSFFSFFSSSSSSFSFFFFFFSSSSFSSFSFFSFSSSFFFFFFSFSSSSFSSSFSSSSFSFSSSFFFFFFSSSFSSFSSSFFSFFFSFFFSFSSSSFFFFFFSFFSSFFSSSSSSSSSFSFSFFSFFFFFSSFSSFSSSFSFSFFSSFFFFFFSFFSSSSSFSFSSFFSSSSFFFFSSSFSFFSFFSSFSSFSSFSSSFFSFSSSSSFFSFSFSFFFSSSFFFSFFSFSSSFSFFSFFSFFSSFFFSSFSSFSFFFFSSFSSFSSSFFFF...
output:
808212748
result:
ok 1 number(s): "808212748"
Test #24:
score: 0
Accepted
time: 319ms
memory: 29172kb
input:
199989 FSFFFSSSFSFFFSSFFSFFFFFFFFSFSFSFFSFSFFSSSFSFFFSSFFFSFFFSSFFSSSSFSFFFFSFSSSSSFFFSSFSSFSSSFSFFSFFSFFSSFSFSFSFSSFFSFFFFSSSFSSFFFSFFSSFFSFSFFFFFSSFSFFSFFFFFFFFFSSFSSSSFFSSSSFSSSSFSSFFSSSFFFSFFFFSSFFFSFSFFSFSSFFFFSSSFFSSFFFSSFFSSFFFSSSFSSFFFFSSSSFSSFSSFFSFFSSFSSFFFSFFSSSSFSSFFFSSFFFSSSSSSSSSSSFFFS...
output:
245218183
result:
ok 1 number(s): "245218183"
Test #25:
score: 0
Accepted
time: 0ms
memory: 6020kb
input:
20 FFSSFSSSFFFFFSFSSFSF 10 19 9 18 1 4 3 6 16 5 15 18 20 7 10 7 15 13 7 18 12 6 5 15 18 17 14 9 11 10 8 18 5 6 2 15 18 4
output:
30
result:
ok 1 number(s): "30"
Test #26:
score: 0
Accepted
time: 2ms
memory: 6720kb
input:
20 FSFSFFFSFFFSFFSFFFSS 8 6 6 18 16 8 7 8 11 1 9 16 3 5 7 11 19 8 13 20 12 1 9 14 4 9 1 15 10 11 7 5 7 17 5 2 13 10
output:
44
result:
ok 1 number(s): "44"
Test #27:
score: 0
Accepted
time: 0ms
memory: 5128kb
input:
20 FSFSSSSSSFSSSFFFFFSF 19 17 16 2 6 14 4 8 13 19 7 9 14 3 5 7 5 12 5 19 2 3 17 6 11 8 15 19 11 5 10 8 2 1 3 20 18 5
output:
101
result:
ok 1 number(s): "101"
Test #28:
score: 0
Accepted
time: 2ms
memory: 6108kb
input:
20 FFFFSFSSSSSSSSSSSFSF 19 16 13 10 10 9 10 18 1 3 8 20 4 16 17 20 16 6 17 15 14 15 12 1 5 18 18 2 11 7 1 15 11 12 10 15 16 15
output:
405
result:
ok 1 number(s): "405"
Test #29:
score: 0
Accepted
time: 2ms
memory: 5200kb
input:
20 FFSFFFFSFSFFSFFFSSSS 6 15 4 8 6 14 12 14 2 7 13 4 1 4 12 16 10 16 14 13 5 15 17 16 14 18 9 14 14 20 16 2 11 6 3 6 11 19
output:
81
result:
ok 1 number(s): "81"
Test #30:
score: 0
Accepted
time: 2ms
memory: 5980kb
input:
20 FFSSFSSSFSFFSSSSSSFF 12 9 12 7 4 8 12 19 8 12 17 19 6 10 1 13 15 5 18 10 16 9 17 15 2 9 3 18 8 11 20 10 13 15 8 6 2 14
output:
129
result:
ok 1 number(s): "129"
Test #31:
score: 0
Accepted
time: 2ms
memory: 6196kb
input:
20 FSSSSFSSSSFFFFFFFSFS 2 14 17 10 5 3 15 16 19 1 9 10 19 15 11 2 12 11 16 4 13 20 8 7 18 20 15 18 6 4 14 16 5 15 9 16 8 14
output:
21
result:
ok 1 number(s): "21"
Test #32:
score: 0
Accepted
time: 0ms
memory: 6948kb
input:
20 FSFSSSFSSFSSFFSSFSFS 16 9 8 10 11 13 12 11 3 19 16 14 8 12 7 18 5 8 19 2 20 7 4 18 17 20 14 11 6 20 9 15 19 12 18 11 1 16
output:
129
result:
ok 1 number(s): "129"
Test #33:
score: 0
Accepted
time: 0ms
memory: 5996kb
input:
20 FSFFSFSSFFSSFSFFSFFF 12 20 2 6 13 15 8 2 4 19 10 1 11 15 11 2 1 7 3 4 18 6 10 4 2 4 12 9 14 8 17 5 5 10 9 16 10 12
output:
1366
result:
ok 1 number(s): "1366"
Test #34:
score: 0
Accepted
time: 2ms
memory: 6596kb
input:
20 FFFFFSSFFSSFFFFSFSSF 6 7 7 16 14 7 8 13 17 19 1 15 4 2 5 1 6 3 7 17 12 15 3 10 7 20 8 14 9 15 3 18 11 7 4 19 7 5
output:
58
result:
ok 1 number(s): "58"
Test #35:
score: 0
Accepted
time: 0ms
memory: 6552kb
input:
4269 SFFFSFSSSSFFFFSFFFSFFSSFSFSSFSSSFSFFFSFSFSSFFFSFFSFFSFSSSFFSSSSFSFFFFFFFSFSSFFFSFFSFFFFSFFFFFSSFFSFFFFSSSFSSSSSFFFSSSSFFFSSFFFSSSSSSFFSFSSSFFFSSSSFSFSSFFFSSFSFSSSSFFFSSSFFFSSSFSSFFSSSSSSFFFFSFFSSSSFFSSSFFFFSFFFFSSFFSFFFSFSFFSFFFFFFSFSSSSFSFSFSSSFFSFFFSSSSFSFFFSSSSSFFSSSSFSSFSSSFSFFFSFSSFFSSFFFF...
output:
159892112
result:
ok 1 number(s): "159892112"
Test #36:
score: 0
Accepted
time: 4ms
memory: 6792kb
input:
4269 SFSFFSFSFFFFSSFSSFSSSSFSFFFFFSSSSSFFFFFFSFFSSFSFFSFFFSSSFSSFFFFSFSSFSFFFFSFSSSSSFFSFFFFFSSFFFFFSFSFSSFFFSFFFSFSSFFFSFFSFFFSFFFFSSSSSFSFSSFFFFFFFSFSFSSFSFSSSFFFSFSSFSSFSSSFFSFFFFFFFSFFFSSSSSFFFFFFSSFFFFFSSFFFFSFSSSFSFSFSSSFSFSSFSFSFFFSSSSFFFFSSFSSFSSFSFSFSSSFFFFSSFSFSSSSFSFSSFSSSFFFSFSFSFSSSFFFF...
output:
856340324
result:
ok 1 number(s): "856340324"
Test #37:
score: 0
Accepted
time: 0ms
memory: 5400kb
input:
4269 SFSSFFFSFFSFSSSFSFSSSSFSSFSSSSSFFSSFFSSSSFSSFSFFFFSSSSSSSFFFFSSSSFSSFFSSSSFSSFFSSFFFSSSFSFFSSSSSFFFSFFSSFFSSFSFSFSFFFFFFSFSFFSFSFFSFSFFSFSSSFSSFFFSSFSFSFFFSFFFSSSFFSFFFSSSFSSFFFSSFSSSSSSSSFSSSSFSFFSSSFFFFFSSSFFFSFFFSFSSSFFFFFFSSFSSFSFFSFSFSFSFSFFSSFSSSSSFSFSSFSFFSSFFSFSSSSSFSSFSFSFSSSSSFSSSFSSF...
output:
812166003
result:
ok 1 number(s): "812166003"
Test #38:
score: 0
Accepted
time: 2ms
memory: 7244kb
input:
4269 SSSSFSSSSFSSSFFSFFSFFFSFFSFFSSFFSFFFFFSSFSFFFSFFFSSSFSSFFSSFSFFSFFFSSFFSFSSSSSSSFSFFFSSSSFFSFFSSFSFSSFFFFFSFSSFFSFFSSSFSSSSFFSFFFFSFSSFFSFSFFFFSSFFFFSFSFSSSFFFSSFSSFSSSSFSSFFSSFSSFSSFFSSFFSSFSSSSFFSSFFSSFSSFSSFSSFFSFSSFFSFSFFSFSFFSFSSFSFFSSSFFFFSSFFSFFSSFFSSFSFFSSSSFFFSFSFSSFFSFSSFSFSFSSFFSSFSS...
output:
913190270
result:
ok 1 number(s): "913190270"
Test #39:
score: 0
Accepted
time: 4ms
memory: 6508kb
input:
4269 SSFSSSFSFFFSSSSFFSSSFFFSSSFSSFFSFFSSSSFFSSSFSFSFFFSSFFSFFFFFFSFSSSSSFFSSFFSSSFFFFSFSSSSSFSFFSSFSSFFSFFFSFFFSSFFSSFFFSSSSFSSSSSFFFFSFSFFSFSFSFFSFSFSSSFSSSFSSFSSSFFSSFSFSSSFSFSSSFFSFSFSSSFFSFFSFFFFFFSSSSFFSSSSFFFFSFSFFFSFFFSSFSFFFSFSSSFFFSFSFSSSSSFFFSSSSFFFSSSFSSSSFSSSFFSSFSSFSFSSSFFSSSSSSFFSSSSS...
output:
963325596
result:
ok 1 number(s): "963325596"
Test #40:
score: 0
Accepted
time: 143ms
memory: 17528kb
input:
199980 SFSFFSSSSSFSSSFFFSSSSFFSSFSSSSFFFFSSFFSSFFFFSFSSFFSSSSSFFFSSSSFFFFFFFSFFSFSSSFSFFFFSFSFFSFSFFSFSFSFSFFSSSSFFSSFSSFFFFSFSFFFFFSSSFSFFFFFFSFFSSSFFSSSFFSSSFSFSFSSSFSSSFSSSSSFSFFFSSSFSSSFFSFSFSFFFSSSSFSSSFSSFSSSFFFFFSFFSFFFFSSSFFSSFFSSSFSSSFSSSFSSFSFSSFSFSFFSSSSFSSFSSSSSSSFSSSSSSSFSSSSSFFSFFFSFFS...
output:
131662118
result:
ok 1 number(s): "131662118"
Test #41:
score: 0
Accepted
time: 134ms
memory: 17604kb
input:
199981 SFFSSFSSFSSSFSSSFSSFSFSSFFFFFFFFSFFFFFSFFFSSFSFSFFSSFSFFFFFSFFFFSSSFFSSFSSFSSSFFSFFSSSFFSSSFSFSSFFFSSFFFSSSSFFSFSFFSFSSFSFSFSFSSSSFFSSSSFSSFSSSSFSFSSSFSFSFFFSSSFSFSFFFFSSSSSSFFSSFSSFSFSFFSFFSSSSSSFFSFFSFFSSFFSFSFSFSFSSSFFSFFFSSFFSSFFFFSSFSSFSSSSSFFSSSFFSSFFSFFFSSSSSFSSFFSFSFFSFFSFSSSFFFSFSSSS...
output:
357767781
result:
ok 1 number(s): "357767781"
Test #42:
score: 0
Accepted
time: 145ms
memory: 17604kb
input:
199982 SFFSSSFSFSSSFFFFSSFFFFSFSSSSFFFSFSFFSSFFSSFSSSFSFSFSSFFSSSSSFSSFSFFFSSFSFSSSSSSFSSFSFSFSFFSSSSFSFSSSSFSSSSSFSSSSSSFSFFSFSSSFSFSSSFFFSFSSSFSSSFFFSSFFSSFSSFSFFSSSSSFSSSFFSFSFSFSFSFFSSFFSFFFSSSFSFFFSFFSSSFSSSFSSSFSFSSSFFSSSSFSFSFFSFFSFSSFSSFFFSFFFSFFFSSFSFFSFSSSFSSFFSSFSSFSSSSSSSSFFFSSFFFFSFFSSF...
output:
927723161
result:
ok 1 number(s): "927723161"
Test #43:
score: 0
Accepted
time: 143ms
memory: 17296kb
input:
199983 SSFSFFSSSFFFFSSSSSFSFFFSFSFFSFSSSSSFSFFSFSSFFSSSFFFSFFFSFFFFSFFSFFSFFSSSSSSSSFFSFSSFSSFSFFFSFFSFFSSSFFFFFSFSSFSFFFFFSFFFFFSSSFSFSFSSSSSFSSFSSSSSFSSSFSFSSSFFFFSSFSSFSSSSSFFFFSSFFSSSSSSFFSSFFSFFFSFFSFSFSFFSFFFSFSFFFSFSSFFSFFFSSSFSFFSSSSFSSSFFSSFSFSFFFFFFFSSSSSFFFSSSSSSSSFFFFSFFSSSFSSFSFSFSSFSFS...
output:
120451617
result:
ok 1 number(s): "120451617"
Test #44:
score: 0
Accepted
time: 141ms
memory: 17400kb
input:
199984 SSSFFSSSSFFFFFFFFFFFSSSFSSSSSSSFSSFFSSFFSFFFFFSSFSFFFFFSSSSFFSSSSSFSSSFSFSFFSSSSFSSFFSSFFSFFSSSFSFSFSFSSFSSFFFFSFFFSSSSSFFSSSFSFFFSSFFFSFFSFSSSSFSFSSFSFSFSFFFSSFFFFFFFFSSFSFFFSFSSSSFFSFSSFSFSFSFSFSSSSSSSFFFSFSSSFFSSFFFFSSFSSFFSFFSSSSFFFFFSSSSSFFFSSSFSSFFSFFSFFSFSFSSSSFFSFSSFSFFFSSSFFFFFFSFSFF...
output:
423303699
result:
ok 1 number(s): "423303699"
Test #45:
score: 0
Accepted
time: 128ms
memory: 17356kb
input:
199985 SSSFSSFSFFFFSFSFFFFSFSSSFSFFSSSFFFSFSFSFSFSSSFFSFSFFSSFFFFFFFFFSFFSSFSSFSFSFSFFSSSFFSSSFSFFFFFFFSSSFFFFFSSSSFSFFFSFFFSSSSSSSSFFSFFSSFFFSSSFSSFFFSSFFSFSFSSSFSFFSSFFFFSFFSFSSSSFSFFSSSSSFFSFSFFFSSSFFSSSFFFSSFSFFFSFFFFFSFFSFFSSSFSFFFSSSFSSFFFSSFFSSFSSSSFFFFFSSFFSFSFFFSSFFFFFSFSSFFFFSSSFFFSFFSFSFF...
output:
525376118
result:
ok 1 number(s): "525376118"
Test #46:
score: 0
Accepted
time: 131ms
memory: 17308kb
input:
199986 SFSSSFSSFFSSSSFSFFFFFSFSSFFSFSSSSFSFFSSSFSFSFSFSFFSFFSFFFSSFSSSSSFSSSSSFFFSFFSSSFSFFSSSSSFFSFSSFSSSFSFSFSSFFSFSFFFFSFFFSSSFSFFFSFSSSFSFFFSSFSSSSFSSSFFSFFFFFSFFSFFSSSSSSSFSSSFSFSFSSSSFSFSSFSSSFFSFFFFFSFFFSFSSSSSSFSFSFSSFFSSFSSSFFSFSFFFSFFSSSFFFFSFFSFFFSFSFSSFFFFSSSSSSFFFSSSSFSFSSFFSFSFFSFFFFSS...
output:
46878101
result:
ok 1 number(s): "46878101"
Test #47:
score: 0
Accepted
time: 125ms
memory: 17528kb
input:
199987 FFFSSSSSSSSSSFSFSFFFSFSFFFSFFSSSFFFSFFFFSSSFFSSSFSSFSSFSSFFFFSFSSSFFFSFFSFFFFFFSFSFFFSSSSSFSSFFSSFSFFFFSFSSSSFSSFFFFFFFSFFFSFSFSFSSFSFSSFFFSSSFSFFSFSFFFFSSFSSFSFFFSSFSFSSFFFSSFSSFSSFFFFSSFFSFFSFSFFFFFFSSFFSFSFSFFSFFSFSFFFFSSSFSSSFSFFSSFSFFFSSFSSSFFSSSFFFFFSFFFSSSFSSSFFFFSFSSFFSFFFSFFFSSFFFFSF...
output:
995576278
result:
ok 1 number(s): "995576278"
Test #48:
score: 0
Accepted
time: 124ms
memory: 17360kb
input:
199988 FFFSFFFSSSFSSSFSSFFSSFFSSFFSFFSSSSSSFSFFFFFFSSSSFSSFSFFSFSSSFFFFFFSFSSSSFSSSFSSSSFSFSSSFFFFFFSSSFSSFSSSFFSFFFSFFFSFSSSSFFFFFFSFFSSFFSSSSSSSSSFSFSFFSFFFFFSSFSSFSSSFSFSFFSSFFFFFFSFFSSSSSFSFSSFFSSSSFFFFSSSFSFFSFFSSFSSFSSFSSSFFSFSSSSSFFSFSFSFFFSSSFFFSFFSFSSSFSFFSFFSFFSSFFFSSFSSFSFFFFSSFSSFSSSFFFF...
output:
140483963
result:
ok 1 number(s): "140483963"
Test #49:
score: 0
Accepted
time: 126ms
memory: 17244kb
input:
199989 FSFFFSSSFSFFFSSFFSFFFFFFFFSFSFSFFSFSFFSSSFSFFFSSFFFSFFFSSFFSSSSFSFFFFSFSSSSSFFFSSFSSFSSSFSFFSFFSFFSSFSFSFSFSSFFSFFFFSSSFSSFFFSFFSSFFSFSFFFFFSSFSFFSFFFFFFFFFSSFSSSSFFSSSSFSSSSFSSFFSSSFFFSFFFFSSFFFSFSFFSFSSFFFFSSSFFSSFFFSSFFSSFFFSSSFSSFFFFSSSSFSSFSSFFSFFSSFSSFFFSFFSSSSFSSFFFSSFFFSSSSSSSSSSSFFFS...
output:
85945824
result:
ok 1 number(s): "85945824"
Test #50:
score: 0
Accepted
time: 115ms
memory: 17592kb
input:
199990 FSSFFFFFFSSFFFFFFFFSFSFSSFSSFFFFSSFFFSFFFFFFSSSFSSFFFSFFSFFFFSSSSSSFSFFFSFSSSSSSSFSSSSFSFSFFSSSSFSSSSSFSSSSFFFSFSSSSSSFSFSFSFSFSFSSFSSFSFSSFSSFSSFSSSFFSFFFSSSFSFFSSSSFFFSSSFSFFSFSSSSSFSFFFFFSFSFSFSSSSSSSSSSSFSFSFFFFSFSFSFSFSSSSFFSFSSFFSSFFFFFFFSFSSFSSFFFSFFSFFSFFFSSFFSSFFSSSSFSFFFSFFFSFSSFSFF...
output:
837172100
result:
ok 1 number(s): "837172100"
Test #51:
score: 0
Accepted
time: 126ms
memory: 17604kb
input:
199991 FFSFFSSSFSFSSFSSSFSFSFSFFFFFFFFFFSSFSFSSSSSSSFSFSFSFSSFFFSSSFSFSFFFFFFFSFSFSSFFSSFSSFSSFSSFSFFFSFFSSFSSFFSSSFFSSSFSFSFFFFSSFFSFSFSSFSFFFSFFFSFSFSSSFFFFFFSFSSSFSFFFSSFSFFSSSFFFFSSSSSFFFSSFSSFFSFFFFSSSFSFFSSSFSFFFFFFSFSSFSSSSFFSFFFFFFFSFSFSFFSSFSSSFFSSFSFSSSSSSFFSSFSSSFSSSFFSFFFFFFFSFSFFSSSFSFS...
output:
582784115
result:
ok 1 number(s): "582784115"
Test #52:
score: 0
Accepted
time: 135ms
memory: 17592kb
input:
199992 FFFSFFSSSFFSSSFFSSSFFFSFSFFSSFFFSFFFSSSFFSFSFFFFSFSFFSFSSFSSSFFSSSSFSFSSSSFFSSSSFFFSSSSFSFFSSSFSSSSFSFFSFSFFSSFSSFSSFFSFSFSFFSFFSSSSSSSSFSSSSSFFFSFSFFSFFSSSSSFSSFSFFSFSFFFFSSSFSSSSSFSSSSSSFSSSSSFFSFSSFSSFSSSSSFSFSSSSFFSFFSFFFFSSFFFFFFFFFFSSSSSFSSFFFSFFFFSFSSFSSSFSSSFFSSFSSSSSFFSSSSFFFSSFSFSSF...
output:
459791581
result:
ok 1 number(s): "459791581"
Test #53:
score: 0
Accepted
time: 120ms
memory: 17564kb
input:
199993 FFFSSSFSSFSSSFSSSSSSFFFSFSSSSSFSFFFSSFFFSFSFSFFFSSSSSFFSSSFSFSSSFSFFFFFSFSSFSFFSSFFSFSSSSSFFSFSFSSSFFFSFSSSSFFFFSSSFFSSFSFSFFSFFSFSSFFSSSFFFSSSSSSFFSFSFFFFSSFSSFFSFFSFFFSFFSFSSFFSSSSFFSSSFSFFFSFSFFFSFFSFSSFFSFFFFSSFFSFSFSFSFSSSSFSSFFSFFFFSSSFSSFFFFFFSSSSFSFSFSFFFFSSFFSSSSFSFSFSFSSSFSSFSFFSSSF...
output:
632483050
result:
ok 1 number(s): "632483050"
Test #54:
score: 0
Accepted
time: 127ms
memory: 17308kb
input:
199994 FSFSSSSSFFSFSSFFFSSFSFSFSSFFSSFSFFSSSSFSSFFFSSFFSFSSSFFFFFSSSFFFSFSSSFSFSFSFFSSFSSFSSSSSFSFFFSFFSFSFSFFSSSFFFFFSSFSSFSFFFSSFFFFFSFSSFFSFSFSSSFFFSSSSFSSFSSFSSFSFFFFFSFSSFSSFFSSSFSFSSFSSSSFSFFSFFSSFFFSSSFFSSFSFSFSFSSSSFSFFFFFFSFFSSSSSSSSFSSSFFFFFFSSSSFFFSSFSFSSSSFSSSSSSFSFSSSSFFSFFFSSSSSSFFSFSS...
output:
198965372
result:
ok 1 number(s): "198965372"
Test #55:
score: 0
Accepted
time: 131ms
memory: 17308kb
input:
199995 FSSFFFSSSFSFFSSSFSSSSSFSFSSSFSFFSSFSFSFFFSSSFSSFSFFSFFFFSSFFSSSFFSFSFFFFFFFFFFFFFSSSFSSFFFSSSFSFSSSFFFSFFSFSSSSFSFSFSFSSFFSFSFFSFFSSFSSSFSFFSSSFFSFFFSFFSFSFSFSFSSSFSSSSFFSSFFFFFSFSSSFFSSSSSSSSFFFSFSFFSSSFSFFFFFSFFFFSSSSSSSFFFSFFSFSSSFSFSFFFFSFSSFSSFFFSSFFFSSFSFFFSSSFSFSSFFSFSFFSFFSSFSFSSSSFFF...
output:
553909431
result:
ok 1 number(s): "553909431"
Test #56:
score: 0
Accepted
time: 122ms
memory: 17600kb
input:
199996 FSSFFSFSSSFFFFFFSFSSFSFFSSFFFFFFFSSSFFSFSSFSSFSFSSFSSSFFFFSFFFFFFSSSSFFFSFSSFSSFFSSFSFFSSSSSFSFFFFSFSFFSFSSFSFSSSSSFSFSSSFFSSFSSFSFFSFFSSFSFSSFSSSFSSSFFSSFFFFSFFSFSFSFFFSFSSSFFSFFSSSSSSSSFSSFSSFSSSSFSSSFSSSFSFFFFFFSFFSSSFSSFFFSFSFSFSSSFSFFSSSSFSSFSFSSFSSFSFFFSSSFFSSFSFSFFSSSFFFFSSSSSSSFSSSFFF...
output:
532351273
result:
ok 1 number(s): "532351273"
Test #57:
score: 0
Accepted
time: 119ms
memory: 17352kb
input:
199997 FFSSSFSSFSFSFSSSSFSFFSSFFFSSFFSSSSSSFSSSFFSSSFFFSFFSFSFSSSFFSSSFSFFFFFSSFFSSFFFFSSSFFFFSSSSFFFSSFFSSSFSFFSFSFSFSFFSSFSFSSSFSSFSSFSFFSSFFFSFSSFSFFSSSFSFFSFFFFSSFFSFSFFFSFSFFSFSFSFFSSFFFSSFSFFSFSSSSSFFFFFSSSSSSSSSFFFFSSFFFSSFFSFSFSSSFSFSFFSSSSFSFSFFFSSFSSFFSFFSSFSSSSSSSFSSSFSSSFSFSSSSFSFFSSSFSS...
output:
320626910
result:
ok 1 number(s): "320626910"
Test #58:
score: 0
Accepted
time: 125ms
memory: 17368kb
input:
199998 FFFSSSSSFSSSFFFFFFSSSSFSSFFFSFSSFFFSFFFFSFFFFFFFSSSFFSFSFFSFSFSFFSSFSFFSFSFSFSFFSSFFSFFFSFSFSSSSFSSSFFFSSSSFFSFFFFSFFFFFFSFSSFSFSSFFSSFSFFSFSSFSFSSFSSSSFSSFFSSFSSSSSSSSFFSFFSSSSSSSSSSSSFFSSFFFFFFSSFFSFFFFSSFFFSFFSSFFFFFFFFSFSSFSSSSFFSFSFFSSSSFSFSFFFSSFSFFFSFFSSFFSSSSSSSFSSSFFFSSFSSSSSFFFFSFSF...
output:
318058822
result:
ok 1 number(s): "318058822"
Test #59:
score: 0
Accepted
time: 103ms
memory: 17608kb
input:
199999 FSFSFSFSSFSSSFSSFFSFSFFFFFFSSFSSSFSFSSFFSSSFSSSFSSSFSFFSFSFFFFFFSFFFSFSSSSSSFFSFFSFFFFFFFSSSFFFSFFSSSFSFSSSSSFSSFSFSFFSFSFFSSFSFSSFFSFSSSSSSSSSSSFFSSSSSFSFFFSFFSFFFSFFFFFSFFFFSSSSSSSFFFFSFFSSSFSFSSFFFFSSFSFSFSSSFSSSSFSSFSFFSFFFSSFSSFFFSFSFFFSFFFFSFSFSSSSSSSFFSSFFFSSFSSSSSFSSSFFFFFSFSSSFFFSFFS...
output:
565502702
result:
ok 1 number(s): "565502702"
Test #60:
score: 0
Accepted
time: 114ms
memory: 17608kb
input:
200000 SFSSSSFSFFSFFFSFSFSSSSSSSSFFSSSFFSFFSSFFFFFFFFFFSSFFFFFFFSFFSFFFFFSSSFFFSFFSFFFFFSSFFSFFFFSSSFSFFSFSSFSFFFFFFFSFFSSFSSFSSFFSSFSSSSSFSSSSFFSFFFFFSSFSFFSFFFSSSSFFSFFFFFSSSSSSFFFSFFSFFFSFFFFFFSSSFSFFFFFSFSSSFFSSSFSFSFSSSFFFFFSSFFFSFSFFFSFSSSSSFSFFSFSSFFSSFSFFFFFSSFSFSFFFSSSFSFFFFSSSSFFFSSFFSFSFS...
output:
287002924
result:
ok 1 number(s): "287002924"
Test #61:
score: 0
Accepted
time: 3ms
memory: 6520kb
input:
4269 SFFFSFSSSSFFFFSFFFSFFSSFSFSSFSSSFSFFFSFSFSSFFFSFFSFFSFSSSFFSSSSFSFFFFFFFSFSSFFFSFFSFFFFSFFFFFSSFFSFFFFSSSFSSSSSFFFSSSSFFFSSFFFSSSSSSFFSFSSSFFFSSSSFSFSSFFFSSFSFSSSSFFFSSSFFFSSSFSSFFSSSSSSFFFFSFFSSSSFFSSSFFFFSFFFFSSFFSFFFSFSFFSFFFFFFSFSSSSFSFSFSSSFFSFFFSSSSFSFFFSSSSSFFSSSSFSSFSSSFSFFFSFSSFFSSFFFF...
output:
988025762
result:
ok 1 number(s): "988025762"
Test #62:
score: 0
Accepted
time: 7ms
memory: 6288kb
input:
4269 SFSFFSFSFFFFSSFSSFSSSSFSFFFFFSSSSSFFFFFFSFFSSFSFFSFFFSSSFSSFFFFSFSSFSFFFFSFSSSSSFFSFFFFFSSFFFFFSFSFSSFFFSFFFSFSSFFFSFFSFFFSFFFFSSSSSFSFSSFFFFFFFSFSFSSFSFSSSFFFSFSSFSSFSSSFFSFFFFFFFSFFFSSSSSFFFFFFSSFFFFFSSFFFFSFSSSFSFSFSSSFSFSSFSFSFFFSSSSFFFFSSFSSFSSFSFSFSSSFFFFSSFSFSSSSFSFSSFSSSFFFSFSFSFSSSFFFF...
output:
149785076
result:
ok 1 number(s): "149785076"
Test #63:
score: 0
Accepted
time: 6ms
memory: 6804kb
input:
4269 SFSSFFFSFFSFSSSFSFSSSSFSSFSSSSSFFSSFFSSSSFSSFSFFFFSSSSSSSFFFFSSSSFSSFFSSSSFSSFFSSFFFSSSFSFFSSSSSFFFSFFSSFFSSFSFSFSFFFFFFSFSFFSFSFFSFSFFSFSSSFSSFFFSSFSFSFFFSFFFSSSFFSFFFSSSFSSFFFSSFSSSSSSSSFSSSSFSFFSSSFFFFFSSSFFFSFFFSFSSSFFFFFFSSFSSFSFFSFSFSFSFSFFSSFSSSSSFSFSSFSFFSSFFSFSSSSSFSSFSFSFSSSSSFSSSFSSF...
output:
284273231
result:
ok 1 number(s): "284273231"
Test #64:
score: 0
Accepted
time: 6ms
memory: 7352kb
input:
4269 SSSSFSSSSFSSSFFSFFSFFFSFFSFFSSFFSFFFFFSSFSFFFSFFFSSSFSSFFSSFSFFSFFFSSFFSFSSSSSSSFSFFFSSSSFFSFFSSFSFSSFFFFFSFSSFFSFFSSSFSSSSFFSFFFFSFSSFFSFSFFFFSSFFFFSFSFSSSFFFSSFSSFSSSSFSSFFSSFSSFSSFFSSFFSSFSSSSFFSSFFSSFSSFSSFSSFFSFSSFFSFSFFSFSFFSFSSFSFFSSSFFFFSSFFSFFSSFFSSFSFFSSSSFFFSFSFSSFFSFSSFSFSFSSFFSSFSS...
output:
501945813
result:
ok 1 number(s): "501945813"
Test #65:
score: 0
Accepted
time: 6ms
memory: 6836kb
input:
4269 SSFSSSFSFFFSSSSFFSSSFFFSSSFSSFFSFFSSSSFFSSSFSFSFFFSSFFSFFFFFFSFSSSSSFFSSFFSSSFFFFSFSSSSSFSFFSSFSSFFSFFFSFFFSSFFSSFFFSSSSFSSSSSFFFFSFSFFSFSFSFFSFSFSSSFSSSFSSFSSSFFSSFSFSSSFSFSSSFFSFSFSSSFFSFFSFFFFFFSSSSFFSSSSFFFFSFSFFFSFFFSSFSFFFSFSSSFFFSFSFSSSSSFFFSSSSFFFSSSFSSSSFSSSFFSSFSSFSFSSSFFSSSSSSFFSSSSS...
output:
699376251
result:
ok 1 number(s): "699376251"
Test #66:
score: 0
Accepted
time: 333ms
memory: 28940kb
input:
199990 FSSFFFFFFSSFFFFFFFFSFSFSSFSSFFFFSSFFFSFFFFFFSSSFSSFFFSFFSFFFFSSSSSSFSFFFSFSSSSSSSFSSSSFSFSFFSSSSFSSSSSFSSSSFFFSFSSSSSSFSFSFSFSFSFSSFSSFSFSSFSSFSSFSSSFFSFFFSSSFSFFSSSSFFFSSSFSFFSFSSSSSFSFFFFFSFSFSFSSSSSSSSSSSFSFSFFFFSFSFSFSFSSSSFFSFSSFFSSFFFFFFFSFSSFSSFFFSFFSFFSFFFSSFFSSFFSSSSFSFFFSFFFSFSSFSFF...
output:
572585899
result:
ok 1 number(s): "572585899"
Test #67:
score: 0
Accepted
time: 418ms
memory: 31216kb
input:
199991 FFSFFSSSFSFSSFSSSFSFSFSFFFFFFFFFFSSFSFSSSSSSSFSFSFSFSSFFFSSSFSFSFFFFFFFSFSFSSFFSSFSSFSSFSSFSFFFSFFSSFSSFFSSSFFSSSFSFSFFFFSSFFSFSFSSFSFFFSFFFSFSFSSSFFFFFFSFSSSFSFFFSSFSFFSSSFFFFSSSSSFFFSSFSSFFSFFFFSSSFSFFSSSFSFFFFFFSFSSFSSSSFFSFFFFFFFSFSFSFFSSFSSSFFSSFSFSSSSSSFFSSFSSSFSSSFFSFFFFFFFSFSFFSSSFSFS...
output:
106691066
result:
ok 1 number(s): "106691066"
Test #68:
score: 0
Accepted
time: 347ms
memory: 36312kb
input:
199992 FFFSFFSSSFFSSSFFSSSFFFSFSFFSSFFFSFFFSSSFFSFSFFFFSFSFFSFSSFSSSFFSSSSFSFSSSSFFSSSSFFFSSSSFSFFSSSFSSSSFSFFSFSFFSSFSSFSSFFSFSFSFFSFFSSSSSSSSFSSSSSFFFSFSFFSFFSSSSSFSSFSFFSFSFFFFSSSFSSSSSFSSSSSSFSSSSSFFSFSSFSSFSSSSSFSFSSSSFFSFFSFFFFSSFFFFFFFFFFSSSSSFSSFFFSFFFFSFSSFSSSFSSSFFSSFSSSSSFFSSSSFFFSSFSFSSF...
output:
951998399
result:
ok 1 number(s): "951998399"
Test #69:
score: 0
Accepted
time: 337ms
memory: 37108kb
input:
199993 FFFSSSFSSFSSSFSSSSSSFFFSFSSSSSFSFFFSSFFFSFSFSFFFSSSSSFFSSSFSFSSSFSFFFFFSFSSFSFFSSFFSFSSSSSFFSFSFSSSFFFSFSSSSFFFFSSSFFSSFSFSFFSFFSFSSFFSSSFFFSSSSSSFFSFSFFFFSSFSSFFSFFSFFFSFFSFSSFFSSSSFFSSSFSFFFSFSFFFSFFSFSSFFSFFFFSSFFSFSFSFSFSSSSFSSFFSFFFFSSSFSSFFFFFFSSSSFSFSFSFFFFSSFFSSSSFSFSFSFSSSFSSFSFFSSSF...
output:
716409060
result:
ok 1 number(s): "716409060"
Test #70:
score: 0
Accepted
time: 303ms
memory: 24840kb
input:
199994 FSFSSSSSFFSFSSFFFSSFSFSFSSFFSSFSFFSSSSFSSFFFSSFFSFSSSFFFFFSSSFFFSFSSSFSFSFSFFSSFSSFSSSSSFSFFFSFFSFSFSFFSSSFFFFFSSFSSFSFFFSSFFFFFSFSSFFSFSFSSSFFFSSSSFSSFSSFSSFSFFFFFSFSSFSSFFSSSFSFSSFSSSSFSFFSFFSSFFFSSSFFSSFSFSFSFSSSSFSFFFFFFSFFSSSSSSSSFSSSFFFFFFSSSSFFFSSFSFSSSSFSSSSSSFSFSSSSFFSFFFSSSSSSFFSFSS...
output:
287920786
result:
ok 1 number(s): "287920786"
Test #71:
score: 0
Accepted
time: 439ms
memory: 28896kb
input:
199995 FSSFFFSSSFSFFSSSFSSSSSFSFSSSFSFFSSFSFSFFFSSSFSSFSFFSFFFFSSFFSSSFFSFSFFFFFFFFFFFFFSSSFSSFFFSSSFSFSSSFFFSFFSFSSSSFSFSFSFSSFFSFSFFSFFSSFSSSFSFFSSSFFSFFFSFFSFSFSFSFSSSFSSSSFFSSFFFFFSFSSSFFSSSSSSSSFFFSFSFFSSSFSFFFFFSFFFFSSSSSSSFFFSFFSFSSSFSFSFFFFSFSSFSSFFFSSFFFSSFSFFFSSSFSFSSFFSFSFFSFFSSFSFSSSSFFF...
output:
619531008
result:
ok 1 number(s): "619531008"
Test #72:
score: 0
Accepted
time: 335ms
memory: 28712kb
input:
199996 FSSFFSFSSSFFFFFFSFSSFSFFSSFFFFFFFSSSFFSFSSFSSFSFSSFSSSFFFFSFFFFFFSSSSFFFSFSSFSSFFSSFSFFSSSSSFSFFFFSFSFFSFSSFSFSSSSSFSFSSSFFSSFSSFSFFSFFSSFSFSSFSSSFSSSFFSSFFFFSFFSFSFSFFFSFSSSFFSFFSSSSSSSSFSSFSSFSSSSFSSSFSSSFSFFFFFFSFFSSSFSSFFFSFSFSFSSSFSFFSSSSFSSFSFSSFSSFSFFFSSSFFSSFSFSFFSSSFFFFSSSSSSSFSSSFFF...
output:
11372220
result:
ok 1 number(s): "11372220"
Test #73:
score: 0
Accepted
time: 435ms
memory: 27820kb
input:
199997 FFSSSFSSFSFSFSSSSFSFFSSFFFSSFFSSSSSSFSSSFFSSSFFFSFFSFSFSSSFFSSSFSFFFFFSSFFSSFFFFSSSFFFFSSSSFFFSSFFSSSFSFFSFSFSFSFFSSFSFSSSFSSFSSFSFFSSFFFSFSSFSFFSSSFSFFSFFFFSSFFSFSFFFSFSFFSFSFSFFSSFFFSSFSFFSFSSSSSFFFFFSSSSSSSSSFFFFSSFFFSSFFSFSFSSSFSFSFFSSSSFSFSFFFSSFSSFFSFFSSFSSSSSSSFSSSFSSSFSFSSSSFSFFSSSFSS...
output:
838488621
result:
ok 1 number(s): "838488621"
Test #74:
score: 0
Accepted
time: 328ms
memory: 26452kb
input:
199998 FFFSSSSSFSSSFFFFFFSSSSFSSFFFSFSSFFFSFFFFSFFFFFFFSSSFFSFSFFSFSFSFFSSFSFFSFSFSFSFFSSFFSFFFSFSFSSSSFSSSFFFSSSSFFSFFFFSFFFFFFSFSSFSFSSFFSSFSFFSFSSFSFSSFSSSSFSSFFSSFSSSSSSSSFFSFFSSSSSSSSSSSSFFSSFFFFFFSSFFSFFFFSSFFFSFFSSFFFFFFFFSFSSFSSSSFFSFSFFSSSSFSFSFFFSSFSFFFSFFSSFFSSSSSSSFSSSFFFSSFSSSSSFFFFSFSF...
output:
23711524
result:
ok 1 number(s): "23711524"
Test #75:
score: 0
Accepted
time: 322ms
memory: 24948kb
input:
199999 FSFSFSFSSFSSSFSSFFSFSFFFFFFSSFSSSFSFSSFFSSSFSSSFSSSFSFFSFSFFFFFFSFFFSFSSSSSSFFSFFSFFFFFFFSSSFFFSFFSSSFSFSSSSSFSSFSFSFFSFSFFSSFSFSSFFSFSSSSSSSSSSSFFSSSSSFSFFFSFFSFFFSFFFFFSFFFFSSSSSSSFFFFSFFSSSFSFSSFFFFSSFSFSFSSSFSSSSFSSFSFFSFFFSSFSSFFFSFSFFFSFFFFSFSFSSSSSSSFFSSFFFSSFSSSSSFSSSFFFFFSFSSSFFFSFFS...
output:
217802478
result:
ok 1 number(s): "217802478"
Test #76:
score: 0
Accepted
time: 325ms
memory: 25672kb
input:
200000 SFSSSSFSFFSFFFSFSFSSSSSSSSFFSSSFFSFFSSFFFFFFFFFFSSFFFFFFFSFFSFFFFFSSSFFFSFFSFFFFFSSFFSFFFFSSSFSFFSFSSFSFFFFFFFSFFSSFSSFSSFFSSFSSSSSFSSSSFFSFFFFFSSFSFFSFFFSSSSFFSFFFFFSSSSSSFFFSFFSFFFSFFFFFFSSSFSFFFFFSFSSSFFSSSFSFSFSSSFFFFFSSFFFSFSFFFSFSSSSSFSFFSFSSFFSSFSFFFFFSSFSFSFFFSSSFSFFFFSSSSFFFSSFFSFSFS...
output:
587382866
result:
ok 1 number(s): "587382866"
Test #77:
score: 0
Accepted
time: 7ms
memory: 5868kb
input:
6942 SSSSSFSSFSFFFFSFFSFFSFSSSSFFFSSSSSSSSSSSSFFSSFSSSFSSFSSFSFSFSSFFFSSFFFFSFSFSFFSFSFSSFFFSSSFFFSFFFFFFFFSFSFFSSSFSSFSSFFFSFSSFFFSSFFSFSSFFSFFSSFFSSSSSFFSSSSSFFSSSSSFFFSSFSFSSSSSSFFSFFFSSFSSSSFSSSSSSFFSFSSFFSFSSFFSSFFFSSSSSFSFSFFSFFFSFFSSSSFFFSSFFSSSSSFSSFSFFSFSSSSSSFFSFSFFFSSSSFFFFFSFFSSSSSFSFFFS...
output:
647088399
result:
ok 1 number(s): "647088399"
Test #78:
score: 0
Accepted
time: 3ms
memory: 7044kb
input:
6942 SSFSSSFSSSFSSSFSFFFSSFFFFSSSFSSFFSFSSFSFSFSFFFSSSFSSSSSFFSFFSFFFSSFFSFFSSSSSFSFFSFSSSFFFSFFFSFSFSSFFFFFSFFSFFFSFSSSFSSSSSFSFFFFSFSSFFSFFFSSFSFFFFSSFSFSFSFSFSSSSFFSSSSFSSFSSSFSSFSSFFSFFFSSFFSFSFFSSFFSSSSSSFSFSSFFFFSSFFSFSSFSSSSFFSSSFSFSSSFFFFFSSFFSFSFFSFFFSSFFSSSFFFFSFSFSSFSFFFFFSFSFSSFSSSFSSSFS...
output:
58335146
result:
ok 1 number(s): "58335146"
Test #79:
score: 0
Accepted
time: 0ms
memory: 7248kb
input:
6942 SFFFFFSSSSSSSSSFFFFSFSFSSSFFFSFFSFFSSSFSFSFFSSFSSSSSSFSSSFSFFSSFFFSFFFSSFFFSFFSFFFFSFFFFSSFSFSFFSFFFSFSFFFSSSFSSSFSSSSSFSFSSFFFSFSSFFFFSFSFSSSSSFFFSFFSFSSFFSFFSFFSSSFFFSSFSFSSFFFSFFFSSFSFSSSFFSSFSSSFFFFFSFSSFFFSFFSFSSFFSFFFSFFFSSSSSSSFSSSSSFFSFFSFFFSFFFFSSFFFSFFFSFFFFSFFSFSSSFSSSSSFFSSFFFFSSFSS...
output:
591276387
result:
ok 1 number(s): "591276387"
Test #80:
score: 0
Accepted
time: 6ms
memory: 7356kb
input:
6942 SFFFFFFSFSSSSFFSSFFFSSSSFSSSSSFFFFSSSFFSSSSFSSFSSFFSFFSSSSFSSFFFSSFSSFFFSFFFSSFFSFFSSFFSFSFSSFSFSFFSFFFSSFFFSSFFSFSFFFFFFSSSFSFFSSSSFSSFSFFSSFFSSFFFSFFFSFSFSFFSSFFSFSSSSFFFFFFFFFFFFFFFFSFSFFSFSFFSSSFSFFSFFSFFSFFFSSFFFFSFSSSSFFSSSFSSSFFSFFSSSSFSFFFFSSSSFSSFFFSSSFSSFFFFSFSFSSSFFFFFSSFSSFFFFFFFSSF...
output:
57049203
result:
ok 1 number(s): "57049203"
Test #81:
score: 0
Accepted
time: 6ms
memory: 6448kb
input:
6942 SFSFSSFSFFFFFSSFSFFSSSFFSFSFSFFSSFFSFSSFFFFSFFSSSFFSSFSFFFSSSSSFFFSSSFSFFFSFSFSFSSFFSFFSFFFFFSFSSSFSSFSFSFSSFFFSSSSSFFSFFSFSSSFFSSSSSFSFFSSFSFSFFFSSSFFFFSFFSFFSFFSFSSSSSFSFFSFFSSFFFSFSFFSFFFFSFSSFSSFFSSSFFFSSFFSFSFSFSFFFFSFSSSSSSFSSFFFFFFFFSFFFSSSSSSFFFFSSSFFSFSFFFFSFFFFFFSFSFFFFSSFSSSFFFFFFSSF...
output:
552170569
result:
ok 1 number(s): "552170569"
Test #82:
score: 0
Accepted
time: 236ms
memory: 23160kb
input:
199990 FSSFFFFFFSSFFFFFFFFSFSFSSFSSFFFFSSFFFSFFFFFFSSSFSSFFFSFFSFFFFSSSSSSFSFFFSFSSSSSSSFSSSSFSFSFFSSSSFSSSSSFSSSSFFFSFSSSSSSFSFSFSFSFSFSSFSSFSFSSFSSFSSFSSSFFSFFFSSSFSFFSSSSFFFSSSFSFFSFSSSSSFSFFFFFSFSFSFSSSSSSSSSSSFSFSFFFFSFSFSFSFSSSSFFSFSSFFSSFFFFFFFSFSSFSSFFFSFFSFFSFFFSSFFSSFFSSSSFSFFFSFFFSFSSFSFF...
output:
889655158
result:
ok 1 number(s): "889655158"
Test #83:
score: 0
Accepted
time: 263ms
memory: 23036kb
input:
199991 FFSFFSSSFSFSSFSSSFSFSFSFFFFFFFFFFSSFSFSSSSSSSFSFSFSFSSFFFSSSFSFSFFFFFFFSFSFSSFFSSFSSFSSFSSFSFFFSFFSSFSSFFSSSFFSSSFSFSFFFFSSFFSFSFSSFSFFFSFFFSFSFSSSFFFFFFSFSSSFSFFFSSFSFFSSSFFFFSSSSSFFFSSFSSFFSFFFFSSSFSFFSSSFSFFFFFFSFSSFSSSSFFSFFFFFFFSFSFSFFSSFSSSFFSSFSFSSSSSSFFSSFSSSFSSSFFSFFFFFFFSFSFFSSSFSFS...
output:
494331015
result:
ok 1 number(s): "494331015"
Test #84:
score: 0
Accepted
time: 221ms
memory: 25764kb
input:
199992 FFFSFFSSSFFSSSFFSSSFFFSFSFFSSFFFSFFFSSSFFSFSFFFFSFSFFSFSSFSSSFFSSSSFSFSSSSFFSSSSFFFSSSSFSFFSSSFSSSSFSFFSFSFFSSFSSFSSFFSFSFSFFSFFSSSSSSSSFSSSSSFFFSFSFFSFFSSSSSFSSFSFFSFSFFFFSSSFSSSSSFSSSSSSFSSSSSFFSFSSFSSFSSSSSFSFSSSSFFSFFSFFFFSSFFFFFFFFFFSSSSSFSSFFFSFFFFSFSSFSSSFSSSFFSSFSSSSSFFSSSSFFFSSFSFSSF...
output:
689624374
result:
ok 1 number(s): "689624374"
Test #85:
score: 0
Accepted
time: 217ms
memory: 25720kb
input:
199993 FFFSSSFSSFSSSFSSSSSSFFFSFSSSSSFSFFFSSFFFSFSFSFFFSSSSSFFSSSFSFSSSFSFFFFFSFSSFSFFSSFFSFSSSSSFFSFSFSSSFFFSFSSSSFFFFSSSFFSSFSFSFFSFFSFSSFFSSSFFFSSSSSSFFSFSFFFFSSFSSFFSFFSFFFSFFSFSSFFSSSSFFSSSFSFFFSFSFFFSFFSFSSFFSFFFFSSFFSFSFSFSFSSSSFSSFFSFFFFSSSFSSFFFFFFSSSSFSFSFSFFFFSSFFSSSSFSFSFSFSSSFSSFSFFSSSF...
output:
683475260
result:
ok 1 number(s): "683475260"
Test #86:
score: 0
Accepted
time: 211ms
memory: 21932kb
input:
199994 FSFSSSSSFFSFSSFFFSSFSFSFSSFFSSFSFFSSSSFSSFFFSSFFSFSSSFFFFFSSSFFFSFSSSFSFSFSFFSSFSSFSSSSSFSFFFSFFSFSFSFFSSSFFFFFSSFSSFSFFFSSFFFFFSFSSFFSFSFSSSFFFSSSSFSSFSSFSSFSFFFFFSFSSFSSFFSSSFSFSSFSSSSFSFFSFFSSFFFSSSFFSSFSFSFSFSSSSFSFFFFFFSFFSSSSSSSSFSSSFFFFFFSSSSFFFSSFSFSSSSFSSSSSSFSFSSSSFFSFFFSSSSSSFFSFSS...
output:
158196096
result:
ok 1 number(s): "158196096"
Test #87:
score: 0
Accepted
time: 252ms
memory: 21552kb
input:
199995 FSSFFFSSSFSFFSSSFSSSSSFSFSSSFSFFSSFSFSFFFSSSFSSFSFFSFFFFSSFFSSSFFSFSFFFFFFFFFFFFFSSSFSSFFFSSSFSFSSSFFFSFFSFSSSSFSFSFSFSSFFSFSFFSFFSSFSSSFSFFSSSFFSFFFSFFSFSFSFSFSSSFSSSSFFSSFFFFFSFSSSFFSSSSSSSSFFFSFSFFSSSFSFFFFFSFFFFSSSSSSSFFFSFFSFSSSFSFSFFFFSFSSFSSFFFSSFFFSSFSFFFSSSFSFSSFFSFSFFSFFSSFSFSSSSFFF...
output:
600871125
result:
ok 1 number(s): "600871125"
Test #88:
score: 0
Accepted
time: 211ms
memory: 23248kb
input:
199996 FSSFFSFSSSFFFFFFSFSSFSFFSSFFFFFFFSSSFFSFSSFSSFSFSSFSSSFFFFSFFFFFFSSSSFFFSFSSFSSFFSSFSFFSSSSSFSFFFFSFSFFSFSSFSFSSSSSFSFSSSFFSSFSSFSFFSFFSSFSFSSFSSSFSSSFFSSFFFFSFFSFSFSFFFSFSSSFFSFFSSSSSSSSFSSFSSFSSSSFSSSFSSSFSFFFFFFSFFSSSFSSFFFSFSFSFSSSFSFFSSSSFSSFSFSSFSSFSFFFSSSFFSSFSFSFFSSSFFFFSSSSSSSFSSSFFF...
output:
295471594
result:
ok 1 number(s): "295471594"
Test #89:
score: 0
Accepted
time: 262ms
memory: 22940kb
input:
199997 FFSSSFSSFSFSFSSSSFSFFSSFFFSSFFSSSSSSFSSSFFSSSFFFSFFSFSFSSSFFSSSFSFFFFFSSFFSSFFFFSSSFFFFSSSSFFFSSFFSSSFSFFSFSFSFSFFSSFSFSSSFSSFSSFSFFSSFFFSFSSFSFFSSSFSFFSFFFFSSFFSFSFFFSFSFFSFSFSFFSSFFFSSFSFFSFSSSSSFFFFFSSSSSSSSSFFFFSSFFFSSFFSFSFSSSFSFSFFSSSSFSFSFFFSSFSSFFSFFSSFSSSSSSSFSSSFSSSFSFSSSSFSFFSSSFSS...
output:
93433174
result:
ok 1 number(s): "93433174"
Test #90:
score: 0
Accepted
time: 215ms
memory: 20880kb
input:
199998 FFFSSSSSFSSSFFFFFFSSSSFSSFFFSFSSFFFSFFFFSFFFFFFFSSSFFSFSFFSFSFSFFSSFSFFSFSFSFSFFSSFFSFFFSFSFSSSSFSSSFFFSSSSFFSFFFFSFFFFFFSFSSFSFSSFFSSFSFFSFSSFSFSSFSSSSFSSFFSSFSSSSSSSSFFSFFSSSSSSSSSSSSFFSSFFFFFFSSFFSFFFFSSFFFSFFSSFFFFFFFFSFSSFSSSSFFSFSFFSSSSFSFSFFFSSFSFFFSFFSSFFSSSSSSSFSSSFFFSSFSSSSSFFFFSFSF...
output:
136831174
result:
ok 1 number(s): "136831174"
Test #91:
score: 0
Accepted
time: 220ms
memory: 20612kb
input:
199999 FSFSFSFSSFSSSFSSFFSFSFFFFFFSSFSSSFSFSSFFSSSFSSSFSSSFSFFSFSFFFFFFSFFFSFSSSSSSFFSFFSFFFFFFFSSSFFFSFFSSSFSFSSSSSFSSFSFSFFSFSFFSSFSFSSFFSFSSSSSSSSSSSFFSSSSSFSFFFSFFSFFFSFFFFFSFFFFSSSSSSSFFFFSFFSSSFSFSSFFFFSSFSFSFSSSFSSSSFSSFSFFSFFFSSFSSFFFSFSFFFSFFFFSFSFSSSSSSSFFSSFFFSSFSSSSSFSSSFFFFFSFSSSFFFSFFS...
output:
957993216
result:
ok 1 number(s): "957993216"
Test #92:
score: 0
Accepted
time: 215ms
memory: 21356kb
input:
200000 SFSSSSFSFFSFFFSFSFSSSSSSSSFFSSSFFSFFSSFFFFFFFFFFSSFFFFFFFSFFSFFFFFSSSFFFSFFSFFFFFSSFFSFFFFSSSFSFFSFSSFSFFFFFFFSFFSSFSSFSSFFSSFSSSSSFSSSSFFSFFFFFSSFSFFSFFFSSSSFFSFFFFFSSSSSSFFFSFFSFFFSFFFFFFSSSFSFFFFFSFSSSFFSSSFSFSFSSSFFFFFSSFFFSFSFFFSFSSSSSFSFFSFSSFFSSFSFFFFFSSFSFSFFFSSSFSFFFFSSSSFFFSSFFSFSFS...
output:
777222734
result:
ok 1 number(s): "777222734"
Extra Test:
score: 0
Extra Test Passed