समस्या
अनुवाद दिखाएँFor each board size k from 1 through n, count unordered pairs of distinct squares on a k by k board where two knights cannot attack each other. A knight moves two squares in one axis and one in the other.
. x . x .
x . . . x
. . K . .
x . . . x
. x . x .K marks a knight and x its possible destinations, when those squares lie on the board. Swapping the two knights does not create another placement.
Implement two_knights(n).
Input
n: The largest board size to consider.
Output
Return n counts in order, for board sizes 1 through n.
सीमाएँ
1 ≤ n ≤ 10,000. Counts fit signed 64-bit integers.
उदाहरण
इनपुट:
n = 3
अपेक्षित आउटपुट:
expected = [0, 6, 28]
इनपुट:
long long n = 3;
अपेक्षित आउटपुट:
std::vector<long long> expected = {0, 6, 28};
इनपुट:
long n = 3;
अपेक्षित आउटपुट:
long[] expected = new long[] {0, 6, 28};
व्याख्या
A 1 × 1 board cannot hold two knights. A 2 × 2 board has six pairs and no attacks. A 3 × 3 board has 36 pairs, of which eight attack, leaving 28.
इनपुट:
n = 1
अपेक्षित आउटपुट:
expected = [0]
इनपुट:
long long n = 1;
अपेक्षित आउटपुट:
std::vector<long long> expected = {0};
इनपुट:
long n = 1;
अपेक्षित आउटपुट:
long[] expected = new long[] {0};
व्याख्या
Two distinct squares are required, but the board has only one.
संदर्भ
यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।