Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
P186SUME - ROUND 6E - Suga và mảng số |
Suga là một người thích chơi với những con số. Hôm nay, Suga muốn chơi với một mảng số nguyên b[ ]. Trong trò chơi, Suga thay đổi mảng bằng cách sử dụng các thay đổi đặc biệt. Mảng ban đầu của Suga là b[1], b[2], …, b[n]. Sau đó, một thay đổi đặc biệt là một chuỗi các hành động:
- Chọn hai phần tử riêng biệt i và j (1 ≤ i , j ≤ n; i ≠ j ) , sao cho b[i] ≥ b[j] .
- Lấy số v = concat ( bi , bj ) , trong đó concat ( x , y ) là số thu được bằng cách thêm số y vào cuối bản ghi thập phân của số x . Ví dụ, concat (500, 10) = 50010 , concat (2, 2) = 22 .
- Thêm số v vào cuối mảng, chiều dài của mảng sẽ tăng thêm một.
- Loại bỏ khỏi các số mảng với các chỉ mục i và j . Độ dài của mảng sẽ giảm hai, và các phần tử của mảng sẽ được đánh số lại từ 1 đến độ dài hiện tại của mảng.
Suga chơi trong một thời gian dài với mảng b của mình và nhận được từ mảng b một mảng bao gồm chính xác một số p. Bây giờ Suga muốn biết: số lượng tối đa các phần tử mảng b có thể chứa ban đầu là gì? Giúp Suga tìm số này. Ban đầu mảng này chỉ có thể chứa các số nguyên dương.
Đầu vào
Dòng đầu tiên của đầu vào chứa một số nguyên p ( 1 ≤ p <10^100000 ), được đảm bảo rằng số p không chứa bất kỳ số 0 đầu tiên nào.
Đầu ra
In một số nguyên - số phần tử mảng b tối đa có thể chứa ban đầu.
Ví dụ:
Input: 9555 Output: 4
Được gửi lên bởi: | adm |
Ngày: | 2018-08-11 |
Thời gian chạy: | 1s |
Giới hạn mã nguồn: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Ngôn ngữ cho phép: | ASM32-GCC ASM32 ASM64 MAWK BC C CSHARP C++ 4.3.2 CPP CPP14 COFFEE LISP sbcl DART FORTH GO JAVA JS-RHINO JS-MONKEY KTLN OCT PAS-GPC PAS-FPC PERL PERL6 PROLOG PYTHON PYTHON3 PY_NBC R RACKET SQLITE SWIFT UNLAMBDA |