提出 #34386906


ソースコード 拡げる

//Author: Xzirium
//Time and Date: 17:52:23  27 August 2022

//Optional FAST
//#pragma GCC optimize("Ofast")
//#pragma GCC optimize("unroll-loops")
//#pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,fma,abm,mmx,avx,avx2,tune=native")

//Required Libraries

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

//Required namespaces

using namespace std;
using namespace __gnu_pbds;

//Required defines

#define endl '\n'

#define READ(X) cin>>X;
#define READV(X) long long X; cin>>X;
#define READAR(A,N) long long A[N]; for(long long i=0;i<N;i++) {cin>>A[i];}
#define rz(A,N) A.resize(N);
#define sz(X) (long long)(X.size())
#define pb push_back
#define pf push_front
#define fi first
#define se second
#define FORI(a,b,c) for(long long a=b;a<c;a++)
#define FORD(a,b,c) for(long long a=b;a>c;a--)

//Required typedefs

template <typename T> using ordered_set = tree<T,null_type,less<T>,rb_tree_tag,tree_order_statistics_node_update>;
template <typename T> using ordered_set1 = tree<T,null_type,greater<T>,rb_tree_tag,tree_order_statistics_node_update>;
typedef long long ll;
typedef long double ld;
typedef pair<int,int> pii;
typedef pair<long long,long long> pll;

//Required Constants

const long long inf=(long long)1e18;
const long long MOD=(long long)(1e9+7);
const long long INIT=(long long)(1e6+1);
const long double PI=3.14159265358979;

// Required random number generators

// mt19937 gen_rand_int(chrono::steady_clock::now().time_since_epoch().count());
// mt19937_64 gen_rand_ll(chrono::steady_clock::now().time_since_epoch().count());

//Required Functions

ll power(ll b, ll e)
{
    ll r = 1ll;
    for(; e > 0; e /= 2, (b *= b) %= MOD)
        if(e % 2) (r *= b) %= MOD;
    return r;
}
ll modInverse(ll a) 
{ 
   return power(a,MOD-2); 
   
}

//Work

int main()
{
    #ifndef ONLINE_JUDGE
    if (fopen("INPUT.txt", "r"))
    {
        freopen ("INPUT.txt" , "r" , stdin);
        //freopen ("OUTPUT.txt" , "w" , stdout);
    }
    #endif
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);

    clock_t clk;
    clk = clock();
//-----------------------------------------------------------------------------------------------------------//

    vector<ll> ans(5,-inf);
    ans[0]=0;
    ll prev_T=0;
    READV(N);
    FORI(i,0,N)
    {
        READV(T);
        READV(X);
        READV(A);
        while (prev_T<T)
        {
            prev_T++;
            vector<ll> ans1=ans;
            FORI(p,0,5)
            {
                if(p+1<5)
                {
                    ans[p+1]=max(ans1[p],ans[p+1]);
                }
                if(p-1>=0)
                {
                    ans[p-1]=max(ans1[p],ans[p-1]);
                }
            }
        }
        ans[X]+=A;
    }
    ll ans_f=0;
    FORI(i,0,5)
    {
        ans_f=max(ans_f,ans[i]);
    }
    cout<<ans_f<<endl;

//-----------------------------------------------------------------------------------------------------------//


    clk = clock() - clk;
    cerr << fixed << setprecision(6) << "Time: " << ((double)clk)/CLOCKS_PER_SEC << endl;

    return 0;
}

提出情報

提出日時
問題 D - Snuke Panic (1D)
ユーザ Xzirium
言語 C++ (GCC 9.2.1)
得点 400
コード長 3310 Byte
結果 AC
実行時間 32 ms
メモリ 3748 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 400 / 400
結果
AC × 3
AC × 30
セット名 テストケース
Sample sample_01.txt, sample_02.txt, sample_03.txt
All hand_01.txt, hand_02.txt, min.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, random_11.txt, random_12.txt, random_13.txt, random_14.txt, random_15.txt, random_16.txt, random_17.txt, random_18.txt, random_19.txt, random_20.txt, random_21.txt, random_22.txt, random_23.txt, random_24.txt, sample_01.txt, sample_02.txt, sample_03.txt
ケース名 結果 実行時間 メモリ
hand_01.txt AC 6 ms 3732 KiB
hand_02.txt AC 2 ms 3644 KiB
min.txt AC 2 ms 3744 KiB
random_01.txt AC 25 ms 3708 KiB
random_02.txt AC 29 ms 3668 KiB
random_03.txt AC 25 ms 3692 KiB
random_04.txt AC 30 ms 3652 KiB
random_05.txt AC 27 ms 3744 KiB
random_06.txt AC 30 ms 3672 KiB
random_07.txt AC 19 ms 3696 KiB
random_08.txt AC 18 ms 3740 KiB
random_09.txt AC 10 ms 3704 KiB
random_10.txt AC 14 ms 3656 KiB
random_11.txt AC 9 ms 3740 KiB
random_12.txt AC 7 ms 3744 KiB
random_13.txt AC 32 ms 3640 KiB
random_14.txt AC 30 ms 3740 KiB
random_15.txt AC 30 ms 3748 KiB
random_16.txt AC 29 ms 3740 KiB
random_17.txt AC 28 ms 3632 KiB
random_18.txt AC 28 ms 3692 KiB
random_19.txt AC 22 ms 3684 KiB
random_20.txt AC 18 ms 3632 KiB
random_21.txt AC 10 ms 3740 KiB
random_22.txt AC 13 ms 3740 KiB
random_23.txt AC 10 ms 3664 KiB
random_24.txt AC 13 ms 3744 KiB
sample_01.txt AC 6 ms 3664 KiB
sample_02.txt AC 2 ms 3688 KiB
sample_03.txt AC 2 ms 3668 KiB