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

Alice, Bob và kẹo

Đề bài

Mô tả

n viên kẹo xếp thành hàng, đánh số từ 1 đến n từ trái sang phải. Viên thứ i có kích thước ai.

Alice và Bob chơi trò ăn kẹo. Alice ăn từ trái sang, Bob ăn từ phải sang. Trò chơi kết thúc khi tất cả kẹo đã bị ăn hết.

Trò chơi diễn ra theo các lượt. Trong mỗi lượt, người chơi ăn một hoặc nhiều viên kẹo từ phía của mình (Alice từ trái, Bob từ phải).

Alice đi trước. Trong lượt đầu tiên, Alice ăn đúng 1 viên kẹo (có kích thước a1). Sau đó hai người chơi luân phiên — Bob đi lượt 2, rồi Alice, rồi Bob, ...

Trong mỗi lượt, người chơi tính tổng kích thước các viên kẹo đã ăn ở lượt hiện tại. Ngay khi tổng này lớn hơn thực sự tổng kích thước các viên kẹo mà đối thủ đã ăn ở lượt liền trước, người chơi dừng lại và lượt kết thúc. Nói cách khác, trong mỗi lượt, người chơi ăn số kẹo ít nhất có thể sao cho tổng kích thước các viên đã ăn trong lượt đó lớn hơn thực sự tổng của đối thủ ở lượt trước. Nếu không đủ kẹo để làm được điều đó, người chơi ăn hết tất cả kẹo còn lại và trò chơi kết thúc.

Hãy in ra số lượt của trò chơi và hai số:

  • a — tổng kích thước tất cả kẹo Alice đã ăn;
  • b — tổng kích thước tất cả kẹo Bob đã ăn.

Dữ liệu vào

Dòng đầu chứa số nguyên t (1t5000) — số bộ dữ liệu.

Mỗi bộ dữ liệu gồm hai dòng. Dòng đầu chứa số nguyên n (1n1000) — số viên kẹo. Dòng thứ hai chứa n số nguyên a1,a2,,an (1ai1000) — kích thước các viên kẹo theo thứ tự từ trái sang phải.

Tổng n trên tất cả bộ dữ liệu không vượt quá 2·105.

Dữ liệu ra

Với mỗi bộ dữ liệu, in ra ba số nguyên trên một dòng — số lượt của trò chơi và hai giá trị a, b tương ứng.

Ràng buộc

  • 1t5000
  • 1n1000
  • 1ai1000
  • n2·105

Ví dụ

Input Output Giải thích
7
11
3 1 4 1 5 9 2 6 5 3 5
1
1000
3
1 1 1
13
1 2 3 4 5 6 7 8 9 10 11 12 13
2
2 1
6
1 1 1 1 1 1
7
1 1 1 1 1 1 1
6 23 21
1 1000 0
2 1 2
6 45 46
2 2 1
3 4 2
4 4 3
Bộ 1: Alice ăn 3; Bob ăn 5; Alice ăn 1+4+1=6; Bob ăn 3+5=8; Alice ăn 5+9=14; Bob ăn 2+6=8 (hết kẹo). Tổng 6 lượt, Alice 23, Bob 21. Bộ 2: chỉ có 1 viên, Alice ăn hết.
3
1
1
1
1
1
1
1 1 0
1 1 0
1 1 0
Mỗi bộ chỉ có 1 viên kẹo, Alice ăn xong là kết thúc.

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 1.26.3 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