Biến đổi may mắn

Đề bài

Mô tả

Cho một số tự nhiên có n chữ số (không có chữ số 0 đứng đầu), biểu diễn dưới dạng mảng các chữ số d1,d2,…,dn (đánh số từ trái sang phải, bắt đầu từ vị trí 1).

Ta thực hiện thao tác sau đúng k lần:

  • Tìm vị trí x nhỏ nhất (1≤x<n) thỏa mãn dx=4 và dx+1=7.
  • Nếu không tồn tại x như vậy, thao tác kết thúc mà không làm thay đổi mảng.
  • Nếu x là số lẻ, gán dx=dx+1=4.
  • Nếu x là số chẵn, gán dx=dx+1=7.

Hãy in ra mảng các chữ số sau khi thực hiện đủ k thao tác.

Dữ liệu vào

  • Dòng đầu chứa hai số nguyên n và k.
  • Dòng thứ hai chứa n chữ số liền nhau (không có khoảng trắng) biểu diễn mảng d.

Dữ liệu ra

In ra một dòng duy nhất là mảng chữ số sau khi hoàn tất k thao tác (không có khoảng trắng).

Ràng buộc

  • 1≤n≤105
  • 0≤k≤109
  • Chữ số đầu tiên của mảng không bằng 0.

Ví dụ

Input Output Giải thích
7 4
4727447
4427477 Diễn biến: 4727447 → 4427447 → 4427477 → 4427447 → 4427477.
4 2
4478
4478 Diễn biến: 4478 → 4778 → 4478. Sau 2 thao tác mảng quay về trạng thái ban đầu.

Bình luận

Không có bình luận tại thời điểm này.

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