Submission #998470
Source Code Expand
#include <bits/stdc++.h> using namespace std; typedef unsigned __int128 TYPE; const int BASE=128; TYPE HIGH=((TYPE)1)<<(BASE-1); int N; int A[100000]; TYPE B[(100000+BASE-1)/BASE+3]; char S[100000]; void orb(int n) { for(int i=0; i*BASE<n; i++) B[i]|=(B[i]>>1)|((B[i+1]&1)<<(BASE-1)); } void andb(int n) { for(int i=0; i*BASE<n; i++) B[i]&=(B[i]>>1)|((B[i+1]&1)<<(BASE-1)); } bool solve() { for(int i=0; i<N-1; i++) { if(S[i]=='M') orb(N-i); else andb(N-i); } return B[0]&1; } int main() { scanf("%d", &N); for(int i=0; i<N; i++) scanf("%d", A+i); scanf("%s", S); int lo=1, mid, hi=N; while(lo<hi) { mid=(lo+hi+1)/2; for(int i=0; i*BASE<N; i++) B[i]=0; for(int i=0; i<N; i++) B[i/BASE]|=((TYPE)(A[i]>=mid))<<(i%BASE); if(solve()) lo=mid; else hi=mid-1; } printf("%d\n", lo); return 0; }
Submission Info
Submission Time | |
---|---|
Task | B - Compression |
User | FatalEagle |
Language | C++14 (GCC 5.4.1) |
Score | 1400 |
Code Size | 1063 Byte |
Status | AC |
Exec Time | 1109 ms |
Memory | 896 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:39:20: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &N); ^ ./Main.cpp:41:25: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%d", A+i); ^ ./Main.cpp:42:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%s", S); ^
Judge Result
Set Name | Sample | subtask1 | subtask2 | All | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 400 / 400 | 800 / 800 | 200 / 200 | ||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt |
subtask1 | sample_2.txt, subtask_1.2_1.txt, subtask_1.2_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt |
subtask2 | sample_1.txt, subtask_1.2_1.txt, subtask_1.2_2.txt, subtask_2_1.txt, subtask_2_10.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt |
All | sample_1.txt, sample_2.txt, sample_3.txt, sample_4.txt, 2_1.txt, 2_2.txt, subtask_1.2_1.txt, subtask_1.2_2.txt, subtask_1_1.txt, subtask_1_10.txt, subtask_1_2.txt, subtask_1_3.txt, subtask_1_4.txt, subtask_1_5.txt, subtask_1_6.txt, subtask_1_7.txt, subtask_1_8.txt, subtask_1_9.txt, subtask_2_1.txt, subtask_2_10.txt, subtask_2_2.txt, subtask_2_3.txt, subtask_2_4.txt, subtask_2_5.txt, subtask_2_6.txt, subtask_2_7.txt, subtask_2_8.txt, subtask_2_9.txt, subtask_3_1.txt, subtask_3_10.txt, subtask_3_11.txt, subtask_3_12.txt, subtask_3_13.txt, subtask_3_14.txt, subtask_3_15.txt, subtask_3_16.txt, subtask_3_17.txt, subtask_3_18.txt, subtask_3_19.txt, subtask_3_2.txt, subtask_3_20.txt, subtask_3_21.txt, subtask_3_3.txt, subtask_3_4.txt, subtask_3_5.txt, subtask_3_6.txt, subtask_3_7.txt, subtask_3_8.txt, subtask_3_9.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
2_1.txt | AC | 3 ms | 256 KB |
2_2.txt | AC | 2 ms | 256 KB |
sample_1.txt | AC | 3 ms | 256 KB |
sample_2.txt | AC | 2 ms | 256 KB |
sample_3.txt | AC | 3 ms | 256 KB |
sample_4.txt | AC | 3 ms | 256 KB |
subtask_1.2_1.txt | AC | 3 ms | 256 KB |
subtask_1.2_2.txt | AC | 3 ms | 256 KB |
subtask_1_1.txt | AC | 967 ms | 768 KB |
subtask_1_10.txt | AC | 1070 ms | 768 KB |
subtask_1_2.txt | AC | 1105 ms | 896 KB |
subtask_1_3.txt | AC | 1109 ms | 768 KB |
subtask_1_4.txt | AC | 876 ms | 640 KB |
subtask_1_5.txt | AC | 16 ms | 256 KB |
subtask_1_6.txt | AC | 1026 ms | 768 KB |
subtask_1_7.txt | AC | 3 ms | 256 KB |
subtask_1_8.txt | AC | 1060 ms | 768 KB |
subtask_1_9.txt | AC | 1068 ms | 896 KB |
subtask_2_1.txt | AC | 1020 ms | 768 KB |
subtask_2_10.txt | AC | 1020 ms | 768 KB |
subtask_2_2.txt | AC | 1020 ms | 768 KB |
subtask_2_3.txt | AC | 1021 ms | 768 KB |
subtask_2_4.txt | AC | 1021 ms | 768 KB |
subtask_2_5.txt | AC | 3 ms | 256 KB |
subtask_2_6.txt | AC | 3 ms | 256 KB |
subtask_2_7.txt | AC | 3 ms | 256 KB |
subtask_2_8.txt | AC | 985 ms | 768 KB |
subtask_2_9.txt | AC | 57 ms | 384 KB |
subtask_3_1.txt | AC | 1026 ms | 768 KB |
subtask_3_10.txt | AC | 966 ms | 768 KB |
subtask_3_11.txt | AC | 1028 ms | 768 KB |
subtask_3_12.txt | AC | 969 ms | 768 KB |
subtask_3_13.txt | AC | 913 ms | 768 KB |
subtask_3_14.txt | AC | 969 ms | 768 KB |
subtask_3_15.txt | AC | 895 ms | 768 KB |
subtask_3_16.txt | AC | 896 ms | 768 KB |
subtask_3_17.txt | AC | 1093 ms | 768 KB |
subtask_3_18.txt | AC | 1093 ms | 768 KB |
subtask_3_19.txt | AC | 1076 ms | 768 KB |
subtask_3_2.txt | AC | 966 ms | 768 KB |
subtask_3_20.txt | AC | 1076 ms | 768 KB |
subtask_3_21.txt | AC | 1076 ms | 768 KB |
subtask_3_3.txt | AC | 19 ms | 256 KB |
subtask_3_4.txt | AC | 830 ms | 640 KB |
subtask_3_5.txt | AC | 623 ms | 640 KB |
subtask_3_6.txt | AC | 1027 ms | 768 KB |
subtask_3_7.txt | AC | 1027 ms | 768 KB |
subtask_3_8.txt | AC | 1026 ms | 768 KB |
subtask_3_9.txt | AC | 1027 ms | 768 KB |