Submission

Status:

PPTTTTTTTT

Subtask/Task Score:

20/100

Score: 20

User: patsa_v

Problemset: Strobogrammatic Numbers

Language: cpp

Time: 1.095 second

Submitted On: 2026-10-14 14:10:36

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

set<char> stb = {'6','9'};
set<char> sm = {'0','1','8'};

bool isstr(long long n){
    cin.tie(0)->sync_with_stdio(0);
    string s = to_string(n);
    int p = s.length()-1;

    if(n == 0||n==1||n==6||n==8||n==9)return true;
    if(!(s[p] != s[0] && stb.count(s[0]) && stb.count(s[p])) && !(s[p] == s[0] && (s[0] == '1' ||  s[0] == '8'))){
        return false;
    }
    for(int i=1;i<p;i++){
        if(!sm.count(s[i])) return false;
    }
    // cout << n << '\n';
    return true;
}
int main(){
    long long l,r;
    cin >> l >> r;
    int cnt = 0;
    for(long long i=l;i<=r;i++){
        if(isstr(i)) cnt ++;
    }
    cout << cnt;
    return 0;
}