Submission #1976641


Source Code Expand

#include<bits/stdc++.h>
#define L long long
#define pb push_back
using namespace std;
int t,a,b,c,d,e;
vector<int> x,y,z;
inline bool chk(int x,int k)
{
    if(k==1)
      return (L)(a-x*e+1)*e-1>=b-x;
    if(k==2)
      return (L)(a-x+1)*e>=b;
}
inline int ef(int l,int r,int k)
{
    while(l<r)
      if(chk(l+r+1>>1,k))
        l=(l+r+1>>1);
      else
        r=(l+r+1>>1)-1;
    return l;
}
inline void orz(int u,int v,int w)
{
    x.pb(u);
    y.pb(v);
    z.pb(w);
    a-=u*w;
    b-=v*w;
}
inline void pri(int c,int d)
{
    int i,j,l,k=0;
    for(i=0;i<x.size();i++)
      if(k+(x[i]+y[i])*z[i]<c)
        k+=(x[i]+y[i])*z[i];
      else if(k>c)
        {
         for(j=1;j<=z[i];j++)
           for(l=1;l<=x[i]+y[i];l++,k++)
             if(k>d)
               return;
             else if(l<=x[i])
               printf("A");
             else
               printf("B");
        }
      else
        {
         j=(c-k-1)/(x[i]+y[i]);
         k+=(x[i]+y[i])*j;
         l=c-k;
         k=c;
         for(j++;j<=z[i];j++,l=1)
           for(;l<=x[i]+y[i];l++,k++)
             if(k>d)
               return;
             else if(l<=x[i])
               printf("A");
             else
               printf("B");
        }
}
int main()
{
	//freopen(".in","r",stdin);
	//freopen(".out","w",stdout);
	int i,j;
	scanf("%d",&t);
	while(t--)
	  {
       scanf("%d%d%d%d",&a,&b,&c,&d);
         {
          if(a>b)       
            e=(a-1)/(b+1)+1;
          else
            e=(b-1)/(a+1)+1;
          i=ef(0,min(a/e,b),1);
          //cout<<e<<" "<<i<<"!!\n";
          orz(e,1,i);
          i=ef(0,min(a,e),2);
          //cout<<i<<"!!\n";
          orz(i,0,1);
          //cout<<a<<" "<<b<<"!!\n";
          orz(0,b-a*e,1);
          orz(1,e,a);
          pri(c,d);
          printf("\n");
         }
       x.clear();
       y.clear();
       z.clear();
      }
	return 0;
}

Submission Info

Submission Time
Task D - Min Max Repetition
User fateice
Language C++14 (GCC 5.4.1)
Score 1100
Code Size 1982 Byte
Status AC
Exec Time 3 ms
Memory 384 KiB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:69:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d",&t);
                ^
./Main.cpp:72:37: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
        scanf("%d%d%d%d",&a,&b,&c,&d);
                                     ^

Judge Result

Set Name Sample Partial All
Score / Max Score 0 / 0 500 / 500 600 / 600
Status
AC × 1
AC × 15
AC × 31
Set Name Test Cases
Sample sample_01.txt
Partial sample_01.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt
All sample_01.txt, sample_01.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_2_01.txt, subtask_2_02.txt, subtask_2_03.txt, subtask_2_04.txt, subtask_2_05.txt, subtask_2_06.txt, subtask_2_07.txt, subtask_2_08.txt, subtask_2_09.txt, subtask_2_10.txt, subtask_2_11.txt, subtask_2_12.txt, subtask_2_13.txt, subtask_2_14.txt, subtask_2_15.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KiB
subtask_1_01.txt AC 2 ms 256 KiB
subtask_1_02.txt AC 2 ms 256 KiB
subtask_1_03.txt AC 2 ms 256 KiB
subtask_1_04.txt AC 2 ms 384 KiB
subtask_1_05.txt AC 2 ms 384 KiB
subtask_1_06.txt AC 2 ms 256 KiB
subtask_1_07.txt AC 2 ms 256 KiB
subtask_1_08.txt AC 3 ms 384 KiB
subtask_1_09.txt AC 2 ms 384 KiB
subtask_1_10.txt AC 2 ms 384 KiB
subtask_1_11.txt AC 2 ms 384 KiB
subtask_1_12.txt AC 2 ms 384 KiB
subtask_1_13.txt AC 2 ms 384 KiB
subtask_1_14.txt AC 2 ms 384 KiB
subtask_2_01.txt AC 2 ms 256 KiB
subtask_2_02.txt AC 3 ms 384 KiB
subtask_2_03.txt AC 2 ms 256 KiB
subtask_2_04.txt AC 2 ms 256 KiB
subtask_2_05.txt AC 3 ms 384 KiB
subtask_2_06.txt AC 3 ms 384 KiB
subtask_2_07.txt AC 3 ms 384 KiB
subtask_2_08.txt AC 3 ms 384 KiB
subtask_2_09.txt AC 2 ms 384 KiB
subtask_2_10.txt AC 2 ms 384 KiB
subtask_2_11.txt AC 2 ms 384 KiB
subtask_2_12.txt AC 2 ms 384 KiB
subtask_2_13.txt AC 2 ms 384 KiB
subtask_2_14.txt AC 2 ms 384 KiB
subtask_2_15.txt AC 2 ms 384 KiB