trang chủ / đề bài / elephnum

Chú voi con và những con số

Đề bài

Mô tả

Cho một số nguyên dương x. Hãy đếm số các số nguyên dương d thỏa mãn đồng thời hai điều kiện:

  • d là ước của x;
  • trong biểu diễn thập phân, d và x có ít nhất một chữ số chung (cùng xuất hiện ở cả hai số).

Dữ liệu vào

Một dòng duy nhất chứa số nguyên x.

Dữ liệu ra

In ra một số nguyên là số lượng ước d thỏa mãn.

Ràng buộc

  • 1≤x≤109.

Ví dụ

Input Output Giải thích
1 1 x=1 có ước duy nhất là 1, và 1 có chung chữ số 1 với x.
10 2 Các ước của 10 là 1,2,5,10. Chỉ 1 (chung chữ số 1) và 10 (chung cả 1 và 0) có chữ số chung với 10.
24 4 Các ước của 24 là 1,2,3,4,6,8,12,24. Bốn ước có chữ số chung với 24 (chứa 2 hoặc 4) là 2,4,12,24.

Bình luận

  • quanghsg9
    đã bình luận 6 days trước

    #include <bits/stdc++.h>

    #define int long long

    using namespace std;

    bool check(int a, int b) {

    bool d[10] = {};

    while (a > 0) {

    d[a % 10] = true;

    a /= 10;

    }

    while (b > 0) {

    if (d[b % 10]) return true;

    b /= 10;

    }

    return false;

    }

    signed main() {

    ios_base::sync_with_stdio(false);

    cin.tie(0);

    int x, ans = 0;

    cin >> x;

    for (int i = 1; i <= x / i; i++) {

    if (x % i == 0) {

    if (check(i, x)) ans++;

    int j = x / i;

    if (j != i && check(j, x))

    ans++;

    }

    }

    cout << ans;

    return 0;

    }

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0