trang chủ / bài tập / paintarr

Tô màu mảng

Đề bài

Mô tả

Cho một mảng a gồm n số nguyên dương. Bạn cần chọn một số nguyên dương d rồi tô màu tất cả các phần tử thành hai màu: mọi phần tử chia hết cho d sẽ được tô đỏ, các phần tử còn lại được tô xanh.

Cách tô được gọi là đẹp nếu không tồn tại hai phần tử kề nhau có cùng màu.

Nhiệm vụ của bạn là tìm một giá trị d bất kỳ cho ra cách tô đẹp, hoặc thông báo rằng điều đó là không thể.

Dữ liệu vào

  • Dòng đầu chứa một số nguyên t — số lượng bộ dữ liệu.
  • Với mỗi bộ dữ liệu:
    • Dòng đầu chứa một số nguyên n — số phần tử của mảng.
    • Dòng thứ hai chứa n số nguyên a1,a2,,an.

Dữ liệu ra

Với mỗi bộ dữ liệu, in ra một số nguyên trên một dòng:

  • Nếu không tồn tại giá trị d nào cho ra cách tô đẹp, in ra 0.
  • Ngược lại, in ra một giá trị d bất kỳ (1d1018) thỏa mãn. Nếu có nhiều đáp án, in ra bất kỳ đáp án nào.

Ràng buộc

  • 1t1000
  • 2n100
  • 1ai1018

Ví dụ

Input Output Giải thích
5
5
1 2 3 4 5
3
10 5 15
3
100 10 200
10
9 8 2 6 6 2 8 6 5 4
2
1 3
2
0
100
0
3
Bộ 1: với d=2, các phần tử chia hết cho 22,4 (đỏ), còn lại xanh, cho dãy màu xanh-đỏ-xanh-đỏ-xanh — đẹp.
Bộ 3: với d=100, chỉ 100200 đỏ, 10 xanh, cho đỏ-xanh-đỏ — đẹp.
Bộ 2 và bộ 4: không có giá trị d nào phù hợp.
1
5
6 5 12 5 16
2 Với d=2: 6,12,16 chia hết cho 2 (đỏ), 5,5 (xanh) cho dãy đỏ-xanh-đỏ-xanh-đỏ — đẹp.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 GO groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0