結果

問題 No.387 ハンコ
ユーザー rgw2010rgw2010
提出日時 2024-10-14 21:51:24
言語 C++14
(gcc 12.3.0 + boost 1.83.0)
結果
RE  
実行時間 -
コード長 1,363 bytes
コンパイル時間 1,526 ms
コンパイル使用メモリ 171,748 KB
実行使用メモリ 7,808 KB
最終ジャッジ日時 2024-10-14 21:51:35
合計ジャッジ時間 9,733 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 RE -
testcase_01 RE -
testcase_02 RE -
testcase_03 RE -
testcase_04 RE -
testcase_05 RE -
testcase_06 RE -
testcase_07 RE -
testcase_08 RE -
権限があれば一括ダウンロードができます
コンパイルメッセージ
In file included from /home/linuxbrew/.linuxbrew/Cellar/gcc@12/12.3.0/include/c++/12/vector:64,
                 from /home/linuxbrew/.linuxbrew/Cellar/gcc@12/12.3.0/include/c++/12/queue:61,
                 from /home/linuxbrew/.linuxbrew/Cellar/gcc@12/12.3.0/include/c++/12/x86_64-pc-linux-gnu/bits/stdc++.h:86,
                 from main.cpp:1:
In member function 'std::vector<_Tp, _Alloc>::size_type std::vector<_Tp, _Alloc>::size() const [with _Tp = long long int; _Alloc = std::allocator<long long int>]',
    inlined from 'int main()' at main.cpp:59:15:
/home/linuxbrew/.linuxbrew/Cellar/gcc@12/12.3.0/include/c++/12/bits/stl_vector.h:988:40: warning: iteration 100009 invokes undefined behavior [-Waggressive-loop-optimizations]
  988 |       { return size_type(this->_M_impl._M_finish - this->_M_impl._M_start); }
      |                          ~~~~~~~~~~~~~~^~~~~~~~~
main.cpp: In function 'int main()':
main.cpp:13:42: note: within this loop
   13 | #define For(i,l,r) for(register int i=l;i<=r;i++)
      |                                          ^
main.cpp:58:9: note: in expansion of macro 'For'
   58 |         For(i,1,N){
      |         ^~~

ソースコード

diff #

#include<bits/stdc++.h>
#define Add(x,y) (x+y>=mod)?(x+y-mod):(x+y)
#define lowbit(x) x&(-x)
#define pi pair<ll,ll>
#define pii pair<ll,pair<ll,ll>>
#define iip pair<pair<ll,ll>,ll>
#define ppii pair<pair<ll,ll>,pair<ll,ll>>
#define fi first
#define se second
#define full(l,r,x) for(auto it=l;it!=r;it++) (*it)=x
#define Full(a) memset(a,0,sizeof(a))
#define open(s1,s2) freopen(s1,"r",stdin),freopen(s2,"w",stdout);
#define For(i,l,r) for(register int i=l;i<=r;i++)
#define _For(i,l,r) for(register int i=r;i>=l;i--)
using namespace std;
typedef double db;
typedef unsigned long long ull;
typedef long long ll;
bool Begin;
const ll N=1e5+10,M=2*N;
inline ll read(){
    ll x=0,f=1;
    char c=getchar();
    while(c<'0'||c>'9'){
        if(c=='-')
          f=-1;
        c=getchar();
    }
    while(c>='0'&&c<='9'){
        x=(x<<1)+(x<<3)+(c^48);
        c=getchar();
    }
    return x*f;
}
inline void write(ll x){
	if(x<0){
		putchar('-');
		x=-x;
	}
	if(x>9)
	  write(x/10);
	putchar(x%10+'0');
}
ll n,x;
vector<ll> E[N];
bitset<M> A,B;
bool End;
int main(){
	n=read();
	For(i,1,n){
		x=read();
		E[x].push_back(i);
	}
	For(i,1,n){
		x=read();
		A[i]=x;
	}
	For(i,1,N){
		if(E[i].size()){
			bitset<M> T;
			for(auto v:E[i])
			  T|=A<<v;
			B^=T;
		}
	}
	For(i,2,2*n)
	  puts(B[i]?"ODD":"EVEN");
	cerr<<'\n'<<abs(&Begin-&End)/1048576<<"MB";
	return 0;
}
0