Submission

Status:

PPPPTxxxxx

Subtask/Task Score:

40/100

Score: 40

User: cyblox_boi

Problemset: Croissaria Number

Language: cpp

Time: 1.090 second

Submitted On: 2025-12-29 22:57:39

#include <bits/stdc++.h>
using namespace std;

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(nullptr);

    long long t;
    cin >> t;

    unordered_map<int, bool> croissaria;

    for (long long i = 0; i < t; i++)
    {
        long long count = 0;
        long long l, r;
        cin >> l >> r;

        for (long long i = (l >= 10) ? l : 10; i <= r; i++)
        {
            if (croissaria.find(i) != croissaria.end() && croissaria[i])
            {
                count++;
            }
            else
            {
                string temp = to_string(i);
                bool isCroissaria = true;

                for (unsigned long long j = 1; j < temp.length(); j++)
                {
                    if (temp[0] <= temp[j])
                    {
                        croissaria[i] = false;
                        isCroissaria = false;
                        break;
                    }
                }

                if (isCroissaria)
                {
                    croissaria[i] = true;
                    count++;
                }
            }
        }

        cout << count << '\n';
    }

    return 0;
}