Submission #69793646
Source Code Expand
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#define ll long long
#define getchar() (p1==p2&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?EOF:*p1++)
using namespace std;
const int N = 1e5+5;
int p[10];
inline int get(int x)
{int s = 0;while(x)x /= 10,s++;return s;}
inline int solve(int l,int r)
{
int x = get(l),y = get(r);
if(x == y)return r-l+1;
int s1 = p[y-1]-max(p[y-2],l),s2 = r-p[y-1]+1;
if(r < 2*p[y-1])
s2 += p[y-1]-1-max({r%p[y-1],r/10,l-1});
return max(s1,s2);
}
char buf[1<<21],*p1,*p2;
inline int rd()
{
char c;int f = 1;
while(!isdigit(c = getchar()))if(c=='-')f = -1;
int x = c-'0';
while(isdigit(c = getchar()))x = x*10+(c^48);
return x*f;
}
int main()
{
// freopen(".in","r",stdin);
// freopen(".out","w",stdout);
for(int i = p[0] = 1;i <= 9;i++)p[i] = p[i-1]*10;
for(int t = rd();t--;)
{
int l = rd(),r = rd();
printf("%d\n",solve(l,r));
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | A - Antichain of Integer Strings |
| User | max0810nb |
| Language | C++ 20 (gcc 12.2) |
| Score | 400 |
| Code Size | 1036 Byte |
| Status | AC |
| Exec Time | 2 ms |
| Memory | 3980 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 01_sample_01.txt |
| All | 01_sample_01.txt, 02_small_01.txt, 02_small_02.txt, 02_small_03.txt, 02_small_04.txt, 02_small_05.txt, 02_small_06.txt, 02_small_07.txt, 02_small_08.txt, 02_small_09.txt, 02_small_10.txt, 02_small_11.txt, 02_small_12.txt, 02_small_13.txt, 02_small_14.txt, 02_small_15.txt, 02_small_16.txt, 02_small_17.txt, 02_small_18.txt, 02_small_19.txt, 02_small_20.txt, 02_small_21.txt, 02_small_22.txt, 02_small_23.txt, 02_small_24.txt, 03_rand_01.txt, 03_rand_02.txt, 03_rand_03.txt, 03_rand_04.txt, 03_rand_05.txt, 04_near_1_01.txt, 04_near_1_02.txt, 04_near_1_03.txt, 04_near_1_04.txt, 04_near_1_05.txt, 04_near_1_06.txt, 04_near_1_07.txt, 04_near_1_08.txt, 04_near_1_09.txt, 04_near_1_10.txt, 05_near_2_01.txt, 05_near_2_02.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01_sample_01.txt | AC | 1 ms | 3776 KiB |
| 02_small_01.txt | AC | 2 ms | 3724 KiB |
| 02_small_02.txt | AC | 1 ms | 3908 KiB |
| 02_small_03.txt | AC | 1 ms | 3720 KiB |
| 02_small_04.txt | AC | 2 ms | 3848 KiB |
| 02_small_05.txt | AC | 1 ms | 3708 KiB |
| 02_small_06.txt | AC | 1 ms | 3724 KiB |
| 02_small_07.txt | AC | 2 ms | 3908 KiB |
| 02_small_08.txt | AC | 1 ms | 3848 KiB |
| 02_small_09.txt | AC | 1 ms | 3708 KiB |
| 02_small_10.txt | AC | 1 ms | 3740 KiB |
| 02_small_11.txt | AC | 1 ms | 3852 KiB |
| 02_small_12.txt | AC | 1 ms | 3688 KiB |
| 02_small_13.txt | AC | 1 ms | 3796 KiB |
| 02_small_14.txt | AC | 2 ms | 3916 KiB |
| 02_small_15.txt | AC | 2 ms | 3724 KiB |
| 02_small_16.txt | AC | 2 ms | 3912 KiB |
| 02_small_17.txt | AC | 1 ms | 3844 KiB |
| 02_small_18.txt | AC | 1 ms | 3908 KiB |
| 02_small_19.txt | AC | 1 ms | 3848 KiB |
| 02_small_20.txt | AC | 2 ms | 3804 KiB |
| 02_small_21.txt | AC | 1 ms | 3820 KiB |
| 02_small_22.txt | AC | 1 ms | 3684 KiB |
| 02_small_23.txt | AC | 2 ms | 3916 KiB |
| 02_small_24.txt | AC | 1 ms | 3892 KiB |
| 03_rand_01.txt | AC | 2 ms | 3800 KiB |
| 03_rand_02.txt | AC | 2 ms | 3740 KiB |
| 03_rand_03.txt | AC | 2 ms | 3788 KiB |
| 03_rand_04.txt | AC | 2 ms | 3836 KiB |
| 03_rand_05.txt | AC | 2 ms | 3808 KiB |
| 04_near_1_01.txt | AC | 2 ms | 3732 KiB |
| 04_near_1_02.txt | AC | 2 ms | 3736 KiB |
| 04_near_1_03.txt | AC | 2 ms | 3896 KiB |
| 04_near_1_04.txt | AC | 2 ms | 3980 KiB |
| 04_near_1_05.txt | AC | 2 ms | 3920 KiB |
| 04_near_1_06.txt | AC | 2 ms | 3856 KiB |
| 04_near_1_07.txt | AC | 2 ms | 3756 KiB |
| 04_near_1_08.txt | AC | 2 ms | 3788 KiB |
| 04_near_1_09.txt | AC | 2 ms | 3804 KiB |
| 04_near_1_10.txt | AC | 2 ms | 3920 KiB |
| 05_near_2_01.txt | AC | 2 ms | 3860 KiB |
| 05_near_2_02.txt | AC | 1 ms | 3664 KiB |