back_rest
ex mod coder
- Член од
- 19 јули 2006
- Мислења
- 1.590
- Поени од реакции
- 107
Задача numero uno: Кул делители
Позитивен цел број k поголем од нула се нарекува кул делител на m ако е помал од m и делител на m, но k^n не е делител на m. Нека d(m) е функција која означува број на кул делители за бројот m. Ако се дадени два цели броеви a и b, да се напиште функција која ќе го врати резултатот на: d(a) + d(a+1) + d(a+2) + ... + d(a+b). Дадени параметри се a, b и n.
a може да биде од 1 до 1000000
b може да биде од 1 до 10000000
n може да биде од 2 до 10
Резултатот е гарантирано во рамките на големината на 32bit integer
Влезни параметри: int a, int b, int n
Функција: int coolDivisors(int a, int b, int n)
Примери:
coolDivisors(1, 12, 2) = 8
coolDivisors(1000000, 10000000, 10) = 146066338
Тест случаеви:
coolDivisors(100, 1000, 3) = ?
coolDivisors(1000, 10000, 4) = ?
coolDivisors(10000, 100000, 5) = ?
Бидејќи задачата е од средна категорија, имате 24 часа за решавање
Позитивен цел број k поголем од нула се нарекува кул делител на m ако е помал од m и делител на m, но k^n не е делител на m. Нека d(m) е функција која означува број на кул делители за бројот m. Ако се дадени два цели броеви a и b, да се напиште функција која ќе го врати резултатот на: d(a) + d(a+1) + d(a+2) + ... + d(a+b). Дадени параметри се a, b и n.
a може да биде од 1 до 1000000
b може да биде од 1 до 10000000
n може да биде од 2 до 10
Резултатот е гарантирано во рамките на големината на 32bit integer
Влезни параметри: int a, int b, int n
Функција: int coolDivisors(int a, int b, int n)
Примери:
coolDivisors(1, 12, 2) = 8
coolDivisors(1000000, 10000000, 10) = 146066338
Тест случаеви:
coolDivisors(100, 1000, 3) = ?
coolDivisors(1000, 10000, 4) = ?
coolDivisors(10000, 100000, 5) = ?
Бидејќи задачата е од средна категорија, имате 24 часа за решавање