Đề bài
Xem bản dịchSquare 1 holds one grain. Each later square holds twice as many grains as the previous square. Return both the count on the requested square and the total on squares 1 through 64. Write each count as decimal text, because the board total is too large for a signed 64-bit integer.
Implement chessboard_grains(square).
Input
square: The requested square, numbered from 1.
Output
Return two decimal strings: [count on the requested square, total on all 64 squares].
Ràng buộc
1 ≤ square ≤ 64. Output strings contain decimal digits only, with no commas, spaces, or leading zeros.
Ví dụ
Đầu vào:
square = 6
Kết quả mong đợi:
expected = ["32", "18446744073709551615"]
Đầu vào:
long long square = 6;
Kết quả mong đợi:
std::vector<std::string> expected = {"32", "18446744073709551615"};
Đầu vào:
long square = 6;
Kết quả mong đợi:
string[] expected = new string[] {"32", "18446744073709551615"};
Giải thích
The first six counts are 1, 2, 4, 8, 16, 32. The board total is 1 + 2 + … + 2⁶³ = 2⁶⁴ − 1.
Đầu vào:
square = 1
Kết quả mong đợi:
expected = ["1", "18446744073709551615"]
Đầu vào:
long long square = 1;
Kết quả mong đợi:
std::vector<std::string> expected = {"1", "18446744073709551615"};
Đầu vào:
long square = 1;
Kết quả mong đợi:
string[] expected = new string[] {"1", "18446744073709551615"};
Giải thích
The first square holds 1 grain. The second output always refers to all 64 squares, not just the requested prefix.
Tham khảo
Thử thách này đã được điều chỉnh cho CodeUtility. Hãy làm theo đề bài và các ràng buộc ở trên.