奇怪,卡常火车头不能用了么
  • 板块灌水区
  • 楼主poplpr
  • 当前回复11
  • 已保存回复11
  • 发布时间2021/8/6 18:38
  • 上次更新2023/11/4 11:47:52
查看原帖
奇怪,卡常火车头不能用了么
26525
poplpr楼主2021/8/6 18:38

用的 c++11 / c++17 O2 编译都过不去,不开 O2 编译也过不去,提示卡常火车头编译错误= =

卡常火车头代码 P2709

#define fastcall __attribute__((optimize("-O3")))
#pragma GCC optimize(2)
#pragma GCC optimize(3)
#pragma GCC optimize("Ofast")
#pragma GCC optimize("inline")
#pragma GCC optimize("-fgcse")
#pragma GCC optimize("-fgcse-lm")
#pragma GCC optimize("-fipa-sra")
#pragma GCC optimize("-ftree-pre")
#pragma GCC optimize("-ftree-vrp")
#pragma GCC optimize("-fpeephole2")
#pragma GCC optimize("-ffast-math")
#pragma GCC optimize("-fsched-spec")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("-falign-jumps")
#pragma GCC optimize("-falign-loops")
#pragma GCC optimize("-falign-labels")
#pragma GCC optimize("-fdevirtualize")
#pragma GCC optimize("-fcaller-saves")
#pragma GCC optimize("-fcrossjumping")
#pragma GCC optimize("-fthread-jumps")
#pragma GCC optimize("-funroll-loops")
#pragma GCC optimize("-freorder-blocks")
#pragma GCC optimize("-fschedule-insns")
#pragma GCC optimize("inline-functions")
#pragma GCC optimize("-ftree-tail-merge")
#pragma GCC optimize("-fschedule-insns2")
#pragma GCC optimize("-fstrict-aliasing")
#pragma GCC optimize("-falign-functions")
#pragma GCC optimize("-fcse-follow-jumps")
#pragma GCC optimize("-fsched-interblock")
#pragma GCC optimize("-fpartial-inlining")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("-freorder-functions")
#pragma GCC optimize("-findirect-inlining")
#pragma GCC optimize("-fhoist-adjacent-loads")
#pragma GCC optimize("-frerun-cse-after-loop")
#pragma GCC optimize("inline-small-functions")
#pragma GCC optimize("-finline-small-functions")
#pragma GCC optimize("-ftree-switch-conversion")
#pragma GCC optimize("-foptimize-sibling-calls")
#pragma GCC optimize("-fexpensive-optimizations")
#pragma GCC optimize("inline-functions-called-once")
#pragma GCC optimize("-fdelete-null-pointer-checks")
#include<bits/stdc++.h>
using namespace std;

typedef long long ll;
typedef double db;
typedef long double ld;

#define IL inline
#define fi first
#define se second
#define mk make_pair
#define pb push_back
#define SZ(x) (int)(x).size()
#define ALL(x) (x).begin(), (x).end()
#define dbg1(x) cout << #x << " = " << x << ", "
#define dbg2(x) cout << #x << " = " << x << endl

template<typename Tp> IL void read(Tp &x) {
    x=0; int f=1; char ch=getchar();
    while(!isdigit(ch)) {if(ch == '-') f=-1; ch=getchar();}
    while(isdigit(ch)) { x=x*10+ch-'0'; ch=getchar();}
    x *= f;
}
int buf[42];
template<typename Tp> IL void write(Tp x) {
    int p = 0;
    if(x < 0) { putchar('-'); x=-x;}
    if(x == 0) { putchar('0'); return;}
    while(x) {
        buf[++p] = x % 10;
        x /= 10;
    }
    for(int i=p;i;i--) putchar('0' + buf[i]);
}

const int N = 50000 + 5;

struct ASK {
    int l, r, id, pos;
    ASK(int l=0, int r=0, int id=0, int pos=0):l(l),r(r),id(id),pos(pos) {}
};

int n, m, K, blocksz = 0;
ll cur=0;
int a[N], cnt[N];
ll ans[N];

ASK ask[N];

IL void add(int x) {
    cur += cnt[a[x]] * 2 + 1;
    cnt[a[x]]++;
}
IL void del(int x) {
    cnt[a[x]]--;
    cur -= cnt[a[x]] * 2 + 1;
}

int main() {
#ifdef LOCAL
    freopen("test.in", "r", stdin);
    // freopen("test.out", "w", stdout);
#endif
    read(n); read(m); read(K);
    for(int i=1;i<=n;i++) read(a[i]);
    blocksz = ceil(1.0 * n / sqrt(m));
    for(int i=1;i<=m;i++) {
        int l, r; read(l); read(r);
        ask[i] = ASK(l, r, i, (l - 1) / blocksz + 1);
    }
    sort(ask+1, ask+1+m, [](ASK x, ASK y) { 
        return x.pos ^ y.pos ? x.pos < y.pos : x.pos & 1 ? x.r < y.r : x.r > y.r;
    });
    for(int i=1, l=1, r=0;i<=m;i++) {
        while(l > ask[i].l) add(--l);
        while(r < ask[i].r) add(++r);
        while(l < ask[i].l) del(l++);
        while(r > ask[i].r) del(r--);
        ans[ask[i].id] = cur;
    }
    for(int i=1;i<=m;i++) {
        write(ans[i]); putchar(10);
    }
    return 0;
}

编译提示

            /tmp/compiler_yw8z8zql/src:2:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize(2)
         ^~~
/tmp/compiler_yw8z8zql/src:3:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize(3)
         ^~~
/tmp/compiler_yw8z8zql/src:4:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("Ofast")
         ^~~
/tmp/compiler_yw8z8zql/src:5:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("inline")
         ^~~
/tmp/compiler_yw8z8zql/src:6:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fgcse")
         ^~~
/tmp/compiler_yw8z8zql/src:7:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fgcse-lm")
         ^~~
/tmp/compiler_yw8z8zql/src:8:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fipa-sra")
         ^~~
/tmp/compiler_yw8z8zql/src:9:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-ftree-pre")
         ^~~
/tmp/compiler_yw8z8zql/src:10:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-ftree-vrp")
         ^~~
/tmp/compiler_yw8z8zql/src:11:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fpeephole2")
         ^~~
/tmp/compiler_yw8z8zql/src:12:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-ffast-math")
         ^~~
/tmp/compiler_yw8z8zql/src:13:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fsched-spec")
         ^~~
/tmp/compiler_yw8z8zql/src:14:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("unroll-loops")
         ^~~
/tmp/compiler_yw8z8zql/src:15:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-falign-jumps")
         ^~~
/tmp/compiler_yw8z8zql/src:16:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-falign-loops")
         ^~~
/tmp/compiler_yw8z8zql/src:17:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-falign-labels")
         ^~~
/tmp/compiler_yw8z8zql/src:18:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fdevirtualize")
         ^~~
/tmp/compiler_yw8z8zql/src:19:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fcaller-saves")
         ^~~
/tmp/compiler_yw8z8zql/src:20:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fcrossjumping")
         ^~~
/tmp/compiler_yw8z8zql/src:21:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fthread-jumps")
         ^~~
/tmp/compiler_yw8z8zql/src:22:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-funroll-loops")
         ^~~
/tmp/compiler_yw8z8zql/src:23:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-freorder-blocks")
         ^~~
/tmp/compiler_yw8z8zql/src:24:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fschedule-insns")
         ^~~
/tmp/compiler_yw8z8zql/src:25:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("inline-functions")
         ^~~
/tmp/compiler_yw8z8zql/src:26:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-ftree-tail-merge")
         ^~~
/tmp/compiler_yw8z8zql/src:27:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fschedule-insns2")
         ^~~
/tmp/compiler_yw8z8zql/src:28:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fstrict-aliasing")
         ^~~
/tmp/compiler_yw8z8zql/src:29:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-falign-functions")
         ^~~
/tmp/compiler_yw8z8zql/src:30:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fcse-follow-jumps")
         ^~~
/tmp/compiler_yw8z8zql/src:31:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fsched-interblock")
         ^~~
/tmp/compiler_yw8z8zql/src:32:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fpartial-inlining")
         ^~~
/tmp/compiler_yw8z8zql/src:33:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("no-stack-protector")
         ^~~
/tmp/compiler_yw8z8zql/src:34:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-freorder-functions")
         ^~~
/tmp/compiler_yw8z8zql/src:35:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-findirect-inlining")
         ^~~
/tmp/compiler_yw8z8zql/src:36:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fhoist-adjacent-loads")
         ^~~
/tmp/compiler_yw8z8zql/src:37:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-frerun-cse-after-loop")
         ^~~
/tmp/compiler_yw8z8zql/src:38:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("inline-small-functions")
         ^~~
/tmp/compiler_yw8z8zql/src:39:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-finline-small-functions")
         ^~~
/tmp/compiler_yw8z8zql/src:40:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-ftree-switch-conversion")
         ^~~
/tmp/compiler_yw8z8zql/src:41:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-foptimize-sibling-calls")
         ^~~
/tmp/compiler_yw8z8zql/src:42:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fexpensive-optimizations")
         ^~~
/tmp/compiler_yw8z8zql/src:43:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("inline-functions-called-once")
         ^~~
/tmp/compiler_yw8z8zql/src:44:9: 错误:‘#pragma GCC optimize’ is not allowed in online judge mode
 #pragma GCC optimize("-fdelete-null-pointer-checks")
         ^~~
2021/8/6 18:38
加载中...