提出 #6689274


ソースコード 拡げる

#pragma GCC optimize ("O3")
#pragma GCC target ("sse4")

#include <bits/stdc++.h>
#include <ext/pb_ds/tree_policy.hpp>
#include <ext/pb_ds/assoc_container.hpp>

using namespace std;
using namespace __gnu_pbds;

typedef long long ll;
typedef long double ld;
typedef complex<ld> cd;

typedef pair<int, int> pi;
typedef pair<ll,ll> pl;
typedef pair<ld,ld> pd;

typedef vector<int> vi;
typedef vector<ld> vd;
typedef vector<ll> vl;
typedef vector<pi> vpi;
typedef vector<pl> vpl;
typedef vector<cd> vcd;

template <class T> using Tree = tree<T, null_type, less<T>, rb_tree_tag,tree_order_statistics_node_update>;

#define FOR(i, a, b) for (int i=a; i<(b); i++)
#define F0R(i, a) for (int i=0; i<(a); i++)
#define FORd(i,a,b) for (int i = (b)-1; i >= a; i--)
#define F0Rd(i,a) for (int i = (a)-1; i >= 0; i--)

#define sz(x) (int)(x).size()
#define mp make_pair
#define pb push_back
#define f first
#define s second
#define lb lower_bound
#define ub upper_bound
#define all(x) x.begin(), x.end()
#define shandom_ruffle random_shuffle

const int MOD = 1000000007;
const ll INF = 1e18;
const int MX = 100001; //check the limits, dummy

int main() {
    ios_base::sync_with_stdio(0); cin.tie(0);

    string S; cin >> S;

    int count[2];
    count[0] = 0;
    count[1] = 0;
    int lastPair = -1;
    char cur = 'R';
    int N = sz(S);
    int ans[N]; F0R(i, N) ans[i] = 0;
    F0R(i, N) {
        if (S[i] == cur) {
            count[i%2]++;
        } else {
            if (S[i] == 'L') {
                lastPair = i-1;
                ans[lastPair] += count[lastPair%2];
                ans[lastPair+1] += count[(lastPair+1)%2];
            } else {
                ans[lastPair] += count[lastPair%2];
                ans[lastPair+1] += count[(lastPair+1)%2];
            }
            count[0] = 0;
            count[1] = 0;
            count[i%2]++;
            cur = S[i];
        }

    }

    ans[lastPair] += count[lastPair%2];
    ans[lastPair+1] += count[(lastPair+1)%2];

    F0R(i, N) {
        cout << ans[i] << " ";
    }
    cout << endl;

    return 0;
}

// read the question correctly (ll vs int)
// template by bqi343
// license: https://github.com/bqi343/USACO/blob/master/LICENSE

提出情報

提出日時
問題 D - Gathering Children
ユーザ Geothermal
言語 C++14 (GCC 5.4.1)
得点 400
コード長 2287 Byte
結果 AC
実行時間 9 ms
メモリ 1104 KiB

ジャッジ結果

セット名 All Sample
得点 / 配点 400 / 400 0 / 0
結果
AC × 21
AC × 3
セット名 テストケース
All sample_01, sample_02, sample_03, 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, testcase_17, testcase_18
Sample sample_01, sample_02, sample_03
ケース名 結果 実行時間 メモリ
sample_01 AC 1 ms 256 KiB
sample_02 AC 1 ms 256 KiB
sample_03 AC 1 ms 256 KiB
testcase_01 AC 6 ms 768 KiB
testcase_02 AC 6 ms 768 KiB
testcase_03 AC 9 ms 1104 KiB
testcase_04 AC 9 ms 1104 KiB
testcase_05 AC 6 ms 768 KiB
testcase_06 AC 7 ms 896 KiB
testcase_07 AC 8 ms 1104 KiB
testcase_08 AC 8 ms 1104 KiB
testcase_09 AC 3 ms 384 KiB
testcase_10 AC 8 ms 1104 KiB
testcase_11 AC 8 ms 1104 KiB
testcase_12 AC 8 ms 1104 KiB
testcase_13 AC 8 ms 1104 KiB
testcase_14 AC 8 ms 1104 KiB
testcase_15 AC 8 ms 1104 KiB
testcase_16 AC 8 ms 1104 KiB
testcase_17 AC 8 ms 1104 KiB
testcase_18 AC 1 ms 256 KiB