Đếm số dhprime

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C#, C++, Clang, Clang++, Cobol, D, Groovy, Haskell, Java, JS, Kotlin, Lua, Node JS, ObjectiveC, OCaml, Output, Pascal, PHP, Prolog, Pypy, Pypy 3, Ruby, Rust, Scala, Swift
Điểm: 200 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Rùa có một chuỗi ký tự \(S\) chỉ bao gồm các ký tự chữ số và ký tự ?. Cậu sẽ thay thế mỗi ký tự ? trong chuỗi đó bằng một trong những ký tự chữ số 0-9, sao cho tạo thành một chuỗi mới là một số nguyên hợp lệ (không bắt đầu bằng số 0) và cậu muốn biết là cậu có thể tạo ra bao nhiêu số nguyên tố bằng cách đó.

Input

  • Chuỗi \(S\), chỉ bao gồm các ký tự chữ số và ký tự ?. Độ dài chuỗi \(S\) không quá \(7\).

Output

  • In ra một số nguyên, là số lượng số nguyên tố mà Rùa có thể tạo thành bằng cách đã mô tả.

Example

Test 1

Input
1?
Output
4
Note

Cậu có thể thế ? bằng một trong ba ký tự 1, 3, 7, 9.

Test 2

Input
?
Output
4

Bình luận


  • -1
    maingocphong176    7:45 p.m. 18 Tháng 7, 2022 đã chỉnh sửa

    Sàn số nguyên tố số nào có thể trở thành từ chuỗi s tức là phải không quá lớn nhất tạo ra từ chuỗ s và không bé hơn số nhỏ nhất phải tạo ra từ chuỗi s . Chạy mất 0,39ms
    Edit:mình có sử dụng hàm pow nếu bạn code có hàm pow giống mình có thể tự viết một hàm pow khác nó sẽ cải thiệt đáng kể thời gian 0,28


    • -1
      minhtuanitk20    3:07 p.m. 26 Tháng 10, 2021

      đệ quy lmj cho mệt


      • -1
        anh03032007    6:58 p.m. 12 Tháng 8, 2021 chỉnh sửa 3

        Ý tưởng dùng sàng đánh dấu các số nguyên tố từ 1->10^7 trong mảng, sau đó dùng đệ quy tính ra tất cả các số có thể được tạo ra từ xâu sau đó kiểm tra bằng mảng đã đánh dấu \(O(1)\).
        độ phức tạp: sàng \(O(nloglogn)\)+tạo ra các số \(O(9^k)\) với \(k\) là số kí tự '?' trong mảng
        :)

        2 phản hồi

        • 0
          n2anndk    5:11 p.m. 5 Tháng 8, 2021

          dấu "?" có bắt buột là những số giống nhau ko ??

          1 phản hồi