有没有按照那个范围出呢

我的代码是准确命中1-4,7,15-17的样例,但是luogu估分只有5分,有没有可能出(1),(1&0)类似这种阴间样例呢, 有没有可能长度为4呢
贴代码:
#include<bits/stdc++.h>
using namespace std;
string a;
long long s,ss,sss,b[1000050],c[100050],l,h,hh,d=-10,dd=-10,k,kkk,kk;
int main(){
freopen("expr.in","r",stdin);
freopen("expr.out","w",stdout);
getline(cin,a);
if(a.size()<=3){
if(a[1]=='&'){
if(a[0]=='1'&&a[2]=='0'){
cout<<0<<endl<<1<<" "<<0;
return 0;
}
if(a[0]=='1'&&a[2]=='1'){
cout<<1<<endl<<1<<" "<<0;
return 0;
}
if(a[0]=='0'&&a[2]=='1'){
cout<<0<<endl<<0<<" "<<0;
return 0;
}
if(a[0]=='0'&&a[2]=='0'){
cout<<0<<endl<<0<<" "<<0;
return 0;
}
}
if(a[1]=='|'){
if(a[0]=='1'&&a[2]=='1'){
cout<<1<<endl<<0<<" "<<1;
return 0;
}
if(a[0]=='1'&&a[2]=='0'){
cout<<1<<endl<<0<<" "<<1;
return 0;
}
if(a[0]=='0'&&a[2]=='1'){
cout<<1<<endl<<0<<" "<<0;
return 0;
}
if(a[0]=='0'&&a[2]=='0'){
cout<<0<<endl<<0<<" "<<0;
return 0;
}
}
}
if(a.size()==5){
if(a[1]=='&'&&a[3]=='&'){
long long t=0;
if(a[0]=='1'){
ss++;
}
if(a[0]=='0'||a[2]=='0'){
t=1;
}
if(t==1){
cout<<0<<endl<<ss<<' '<<0;
return 0;
}
else{
ss++;
if(a[4]=='0'){
cout<<'0'<<endl<<ss<<' '<<0;
return 0;
}
else{
cout<<'1'<<endl<<ss<<' '<<0;
return 0;
}
}
}
if(a[1]=='&'&&a[3]=='|'){
long long t=0;
if(a[0]=='1'){
ss++;
}
if(a[0]=='0'||a[2]=='0'){
t=1;
}
if(t==1){
if(a[4]=='0'){
cout<<0<<endl<<0<<' '<<0;
return 0;
}
if(a[4]=='1'){
cout<<1<<endl<<0<<' '<<0;
return 0;
}
}
else{
sss++;
if(a[4]=='0'){
cout<<'1'<<endl<<ss<<' '<<sss;
return 0;
}
else{
cout<<'1'<<endl<<ss<<' '<<sss;
return 0;
}
}
}
if(a[1]=='|'&&a[3]=='&'){
long long t=0;
if(a[2]=='1'){
ss++;
}
if(a[2]=='0'||a[4]=='0'){
t=1;
}
if(t==1){
if(a[0]=='0'){
cout<<0<<endl<<ss<<' '<<0;
return 0;
}
if(a[0]=='1'){
cout<<1<<endl<<ss<<' '<<1;
return 0;
}
}
else{
sss++;
if(a[0]=='0'){
cout<<'1'<<endl<<1<<' '<<0;
return 0;
}
else{
cout<<'1'<<endl<<ss<<' '<<sss;
return 0;
}
}
}
if(a[1]=='|'&&a[3]=='|'){
long long t=0;
if(a[0]=='1'){
ss++;
}
if(a[0]=='0'&&a[2]=='0'){
t=1;
}
if(t==1){
if(a[4]=='1'){
cout<<'1'<<endl<<0<<' '<<0;
return 0;
}
if(a[4]=='0'){
cout<<'0'<<endl<<0<<' '<<0;
return 0;
}
}
else{
ss++;
if(a[4]=='0'){
cout<<'1'<<endl<<0<<' '<<2;
return 0;
}
else{
cout<<'1'<<endl<<0<<' '<<2;
return 0;
}
}
}
}
for(int i=0;i<a.size();i++){
if(a[i]=='('){
s++;
b[i+1]=4;
}
if(a[i]==')'){
s++;
b[i+1]=5;
}
if(a[i]=='&'){
ss++;
b[i+1]=2;
if(i+1>d)d=i+1;
}
if(a[i]=='|'){
sss++;
b[i+1]=3;
if(i+1>dd)dd=i+1;
}
if(a[i]=='1')b[i+1]=1;
if(a[i]=='0')b[i+1]=0;
}
if(s==0){
if(sss==0){
k=1;
}
if(ss==0){
k=2;
}
for(int i=1;i<=a.size();i++){
if(b[i]==2){
if(b[i-1]==1){
h++;
if(b[i+1]==1){b[i-1]=1,b[i]=1,b[i+1]=1;}
else if(b[i+1]==0){b[i-1]=0,b[i]=0,b[i+1]=0;}
}
else if(b[i-1]==0){b[i-1]=0,b[i]=0,b[i+1]=0;}
if(k==1&&i==d){
cout<<b[i+1]<<endl<<h<<" "<<0;
return 0;
}
}
}
for(int i=1;i<=a.size();i++){
if(b[i]==3){
if(b[i-1]==1){
hh++;
if(b[i+1]==1){b[i-1]=1,b[i]=1,b[i+1]=1;}
else if(b[i+1]==0){b[i-1]=1,b[i]=1,b[i+1]=1;}
}
else if(b[i-1]==0){
if(b[i+1]==1){
b[i-1]=1,b[i]=1,b[i+1]=1;}
else if(b[i+1]==0){
b[i-1]=0,b[i]=0,b[i+1]=0;}
}
if(k==2&&i==dd){
cout<<b[i+1]<<endl<<0<<" "<<hh;
return 0;
}
if(i==dd){
cout<<b[i+1]<<endl<<h<<" "<<hh;
return 0;
}
}
}
}
return 0;
}
//6*8+1