Submission #35609221


Source Code Expand

Copy
#include<bits/stdc++.h>
using namespace std;
const int mxn=3e5+10;
int T,n,k,pre[mxn],sum[mxn]; char s[mxn];
bool check();
int main()
{
//freopen("test.out","w",stdout);
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&k);
scanf("%s",s+1);
if(!check()) puts("No");
else puts("Yes");
}
}
bool check()
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#include<bits/stdc++.h>
using namespace std;
const int mxn=3e5+10;

int T,n,k,pre[mxn],sum[mxn]; char s[mxn];
bool check();

int main()
{
    //freopen("test.out","w",stdout);
    scanf("%d",&T);
    while(T--)
    {
        scanf("%d%d",&n,&k);
        scanf("%s",s+1);
        if(!check()) puts("No");
        else puts("Yes");
    }
}

bool check()
{
    int ans=0;
    int t1=0,t2=0;
    for(int i=1;i<=n;i++) pre[i]=sum[i]=0;
    for(int i=1;i<=n;i++) 
    {
        pre[i]=pre[i-1]+(s[i]=='1');
        sum[i]=sum[i-1]+(s[i]=='?');
    }
    for(int l=1,r=k;r<=n;r++,l++)
    {
        t1=pre[r]-pre[l-1],t2=sum[r]-sum[l-1];
        if(t1+t2==k&&pre[l-1]==0&&pre[n]-pre[r]==0) ans++;
    }
    return ans==1;
}

Submission Info

Submission Time
Task A - Continuous 1
User cjh_hhz
Language C++ (GCC 9.2.1)
Score 300
Code Size 752 Byte
Status AC
Exec Time 12 ms
Memory 6272 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:11:10: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   11 |     scanf("%d",&T);
      |     ~~~~~^~~~~~~~~
./Main.cpp:14:14: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   14 |         scanf("%d%d",&n,&k);
      |         ~~~~~^~~~~~~~~~~~~~
./Main.cpp:15:14: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   15 |         scanf("%s",s+1);
      |         ~~~~~^~~~~~~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 1
AC × 26
Set Name Test Cases
Sample 00-sample-001.txt
All 00-sample-001.txt, 01-all-001.txt, 01-all-002.txt, 01-all-003.txt, 01-all-004.txt, 02-multi-001.txt, 02-multi-002.txt, 02-multi-003.txt, 02-multi-004.txt, 02-multi-005.txt, 02-multi-006.txt, 02-multi-007.txt, 02-multi-008.txt, 02-multi-009.txt, 02-multi-010.txt, 03-max-001.txt, 03-max-002.txt, 03-max-003.txt, 03-max-004.txt, 03-max-005.txt, 03-max-006.txt, 03-max-007.txt, 03-max-008.txt, 04-test-001.txt, 04-test-002.txt, 04-test-003.txt
Case Name Status Exec Time Memory
00-sample-001.txt AC 7 ms 3636 KB
01-all-001.txt AC 5 ms 3600 KB
01-all-002.txt AC 11 ms 3632 KB
01-all-003.txt AC 5 ms 3740 KB
01-all-004.txt AC 12 ms 3640 KB
02-multi-001.txt AC 5 ms 3964 KB
02-multi-002.txt AC 6 ms 4044 KB
02-multi-003.txt AC 5 ms 3936 KB
02-multi-004.txt AC 8 ms 3928 KB
02-multi-005.txt AC 5 ms 4080 KB
02-multi-006.txt AC 5 ms 3948 KB
02-multi-007.txt AC 7 ms 3944 KB
02-multi-008.txt AC 5 ms 4040 KB
02-multi-009.txt AC 9 ms 3900 KB
02-multi-010.txt AC 5 ms 3816 KB
03-max-001.txt AC 6 ms 6116 KB
03-max-002.txt AC 6 ms 6268 KB
03-max-003.txt AC 7 ms 6224 KB
03-max-004.txt AC 6 ms 6272 KB
03-max-005.txt AC 8 ms 6264 KB
03-max-006.txt AC 6 ms 6260 KB
03-max-007.txt AC 6 ms 6124 KB
03-max-008.txt AC 7 ms 6120 KB
04-test-001.txt AC 6 ms 6256 KB
04-test-002.txt AC 7 ms 6256 KB
04-test-003.txt AC 7 ms 6264 KB


2025-03-17 (Mon)
04:05:43 +00:00