Nộp bài | Các bài nộp | Làm tốt nhất | Về danh sách bài |
SSAM319B - BIẾN ĐỔI DÃY SỐ |
Cho dãy số A[] gồm N phần tử. Một dãy số gọi là “đẹp” nếu như ước chung lớn nhất của tất cả các phần tử trong dãy số lớn hơn 1. Bạn được phép sử dụng phép biến đổi thay 2 số A[i], A[i+1] bằng A[i]-A[i+1]. A[i]+A[i+1]. Nhiệm vụ của bạn là hãy xác định số phép biến đổi ít nhất, để dãy A[] sau khi biến đổi sẽ là một dãy số đẹp. Input: Dòng đầu tiên là số lượng bộ test T (T ≤ 20). Mỗi test gồm một xâu S có độ dài không vượt quá 105. Output: Với mỗi test, hãy in ra đáp án tìm được trên một dòng. Nếu biến đổi được, in ra “YES” + số bước ít nhất. Nếu không thể biến đổi được, in ra “NO”. Test ví dụ:
Input: |
Output |
3 2 1 1 3 6 2 4 2 1 3
|
YES 1 YES 0 YES 1 |
Được gửi lên bởi: | adm |
Ngày: | 2019-08-02 |
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 |