[BestCoder] Round #5

1001

http://acm.hdu.edu.cn/showproblem.php?pid=4956

#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <string.h>
#include <stdlib.h>
#include <cmath>
#include <iomanip>
#include <vector>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <cctype>
using namespace std;

long long answer(long long l,long long r)
{
    return (r+8)/11-(l-1+8)/11;
}
long long cal(long long l,long long r)
{
    long long cnt=0;
    for(long long i=l;i<=r;i++)
    {
        long long tp=i;
        long long cha=0;
        int mul=1;
        while(tp)
        {
            cha+=tp%10*mul;
            tp/=10;
            mul=-mul;
        }
        if(cha==3)
            cnt++;
    }
    return cnt;
}

int main()
{
    int t;
    scanf("%d",&t);
    while(t--)
    {
        long long l,r;
        scanf("%I64d%I64d",&l,&r);
        long long R;
        long long ans=-1;
        for(R=l;R<=r;R++)
        {
            if(cal(l,R)!=answer(l,R))
                {
                    ans=R;
                    break;
                }
        }
        printf("%I64d\n",ans);

    }
    return 0;
}

02 03待补充

你可能感兴趣的:([BestCoder] Round #5)