Cümlədəki sözlərin sayı -ə əsaslanaraq problemi həll etmək üçün bir formul tapaq.
cüt ədəd olsun. Barış və Əzizin cümlələrini nəzərdən keçirək:
"Fərq" massivindəki ədədlərin cəmini hesablayın. Massivdəki ədədləri iki bərabər hissəyə bölün. 1-dən n - 1-ə qədər olan ədədlərin addımında ilə cəmini tapın (bu, arifmetik proqressiyadır). Bu aralıqda ədəd var. Buna görə də "fərq" massivindəki ədədlərin cəmi belədir:
tək ədəd olsun. Barış və Əzizin cümlələrini nəzərdən keçirək:
"Fərq" massivindəki ədədlərin cəmini hesablayın. Massivdəki ədədləri iki bərabər hissəyə bölün. 2-dən n - 1-ə qədər olan ədədlərin addımında ilə cəmini tapın (bu, arifmetik proqressiyadır). Bu aralıqda (n - 1) / 2 ədəd var. Buna görə də "fərq" massivindəki ədədlərin cəmi belədir:
Nümunə
n = 8 olsun.
"Fərq" massivindəki ədədlərin cəmi 8^2 / 2 = 32dir.
n = 7 olsun.
"Fərq" massivindəki ədədlərin cəmi (7^2 - 1) / 2 = 24dir.
Alqoritm icrası
Test hallarının sayını oxuyun .
scanf("%d", &tests);
while (tests--)
{Hər bir dəyəri üçün nəticəni hesablayıb çap edin.
scanf("%d", &n);
if (n % 2 == 0)
res = n * n / 2;
else
res = (n * n - 1) / 2;
printf("%lld\n", res);
}Python icrası
Test hallarının sayını oxuyun .
tests = int(input())
for _ in range(tests):Hər bir dəyəri üçün nəticəni hesablayıb çap edin.
n = int(input())
if n % 2 == 0:
res = n * n // 2
else:
res = (n * n - 1) // 2
print(res)