Submission #354335


Source Code Expand

#include <iostream>
#include <vector>
#include <array>
#include <algorithm>
#include <map>
#include <functional>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;

double logfact[2000005];

int main() {
	cin.tie(0);
    ios::sync_with_stdio(false);
    
    logfact[0] = 0;
    for(int i = 1; i < 2000005; i++){
        logfact[i] = log(i) + logfact[i-1];
    }
    
    int N;
    cin >> N;
    int p[N], q[N];
    
    for(int i = 0; i < N; i++){
        cin >> p[i] >> q[i];
        p[i]--; q[i]--;
    }
    
    double cp[N];
    //cp[0] = logfact[p[1] + q[1] - p[0] - q[0]] - logfact[p[1] - p[0]] - logfact[q[1] - q[0]];
    cp[0] = logfact[p[0] + q[0]] - logfact[p[0]] - logfact[q[0]];
    //cout << cp[0] << endl;
    for(int i = 1; i < N; i++){
        cp[i] = logfact[p[i] + q[i] - p[i-1] - q[i-1]] - logfact[p[i] - p[i-1]] - logfact[q[i] - q[i-1]];
        //cout << cp[i] << endl;
    }
    
    int Q;
    cin >> Q;
    
    for(int j = 0; j < Q; j++){
        int t;
        cin >> t;
        if(t == 1){
            int k, a, b;
            cin >> k >> a >> b;
            k--; a--; b--;
            p[k] = a; q[k] = b;

            cp[k] = logfact[p[k] + q[k] - p[k-1] - q[k-1]] - logfact[p[k] - p[k-1]] - logfact[q[k] - q[k-1]];
            k++;
            cp[k] = logfact[p[k] + q[k] - p[k-1] - q[k-1]] - logfact[p[k] - p[k-1]] - logfact[q[k] - q[k-1]];
            
            continue;
        }
        int lo, lt, ro, rt;
        cin >> lo >> ro >> lt >> rt;
        double sumo = 0, sumt = 0;
        for(;lo < ro; lo++) sumo += cp[lo];
        for(;lt < rt; lt++) sumt += cp[lt];
        //cout << sumo << " " << sumt << " ";
        cout << (sumo > sumt ? "FIRST" : "SECOND") << endl;
    }
    
	return 0;
}

Submission Info

Submission Time
Task D - 高橋くんとマラソンコース
User blst_yg
Language C++14 (Clang++ 3.4)
Score 0
Code Size 1827 Byte
Status TLE
Exec Time 3036 ms
Memory 19668 KiB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 0 / 30 0 / 70
Status
AC × 2
AC × 8
RE × 4
AC × 9
TLE × 5
RE × 9
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_02.txt
Subtask1 subtask1_0.txt, subtask1_1.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_special.txt, subtask1_special2.txt, subtask0_sample_01.txt, subtask0_sample_02.txt
All subtask0_sample_01.txt, subtask0_sample_02.txt, subtask1_0.txt, subtask1_1.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_special.txt, subtask1_special2.txt, subtask2_0.txt, subtask2_1.txt, subtask2_2.txt, subtask2_3.txt, subtask2_4.txt, subtask2_5.txt, subtask2_6.txt, subtask2_7.txt, subtask2_special.txt, subtask2_special2.txt, subtask2_special3.txt
Case Name Status Exec Time Memory
subtask0_sample_01.txt AC 136 ms 16420 KiB
subtask0_sample_02.txt AC 141 ms 16372 KiB
subtask1_0.txt RE 368 ms 16424 KiB
subtask1_1.txt AC 136 ms 16420 KiB
subtask1_2.txt RE 375 ms 16364 KiB
subtask1_3.txt RE 360 ms 16428 KiB
subtask1_4.txt AC 138 ms 16416 KiB
subtask1_5.txt AC 141 ms 16424 KiB
subtask1_6.txt AC 138 ms 16424 KiB
subtask1_7.txt AC 138 ms 16420 KiB
subtask1_special.txt AC 143 ms 16408 KiB
subtask1_special2.txt RE 364 ms 16428 KiB
subtask2_0.txt TLE 3033 ms 19616 KiB
subtask2_1.txt TLE 3035 ms 19668 KiB
subtask2_2.txt RE 1343 ms 19488 KiB
subtask2_3.txt RE 840 ms 19484 KiB
subtask2_4.txt RE 2642 ms 19488 KiB
subtask2_5.txt RE 1989 ms 19488 KiB
subtask2_6.txt TLE 3036 ms 19624 KiB
subtask2_7.txt RE 641 ms 19488 KiB
subtask2_special.txt TLE 3036 ms 19628 KiB
subtask2_special2.txt TLE 3034 ms 19620 KiB
subtask2_special3.txt AC 325 ms 19496 KiB