Mendo Judge Discussion Board - Forums
Search
Recent Topics
Hottest Topics
Member Listing
Back to home page
Пишување на код
Forum Index
»
C/C++
Author
Message
29/01/2018 14:52:23
Subject:
Пишување на код
Perez
Joined: 18/10/2014 18:53:59
Messages: 93
Offline
Како да го напишаm ова во код ?
http://prntscr.com/i765ey
This message was edited 1 time. Last update was at 29/01/2018 15:05:37
30/01/2018 10:19:05
Subject:
Re:Пишување на код
despotovski01
Joined: 23/02/2014 14:36:12
Messages: 37
Offline
Еве една можна имплементација:
#include <bits/stdc++.h> using namespace std; const int MAX_PRIME = 100000; bool is_prime[MAX_PRIME]; vector<int> primes; void generate_primes() { for(int i = 2;i<MAX_PRIME;++i) { is_prime[i] = true; } for(int i = 2;i<MAX_PRIME;++i) { if(is_prime[i]) { primes.push_back(i); for(int j = i+i;j<MAX_PRIME;j += i) { is_prime[j] = false; } } } } long long pow_ll(long long n, long long p) { if(p == 0) { return 1; } long long res = pow_ll(n, p/2); res *= res; if(p % 2) { res *= n; } return res; } map<int, int> get_prime_factorization(int n) { map<int, int> prime_factors; for(int p: primes) { if(p > n) { break; } while(n % p == 0) { prime_factors[p]++; n /= p; } } return prime_factors; } long long number_of_factors(int n) { map<int, int> prime_factors = get_prime_factorization(n); long long cnt = 1; for(auto it = prime_factors.begin();it != prime_factors.end();++it) { cnt *= it->second + 1; } return cnt; } long long sum_of_factors(int n) { map<int, int> prime_factors = get_prime_factorization(n); long long sum = 1; for(auto it = prime_factors.begin();it != prime_factors.end();++it) { sum *= (pow_ll(it->first, it->second + 1) - 1) / (it->first - 1); } return sum; } int main() { ios::sync_with_stdio(false); generate_primes(); int n; cin>>n; cout<<"Number of factors: "<<number_of_factors(n)<<endl; cout<<"Sum of factors: "<<sum_of_factors(n)<<endl; return 0; }
31/01/2018 21:38:27
Subject:
Re:Пишување на код
Perez
Joined: 18/10/2014 18:53:59
Messages: 93
Offline
Blagodaram mnogu
Forum Index
»
C/C++
Go to:
Select a forum
Добродојдовте!
Општа дискусија
Задачи од национални натпревари
Задачи од меѓународни натпревари
Други задачи
Регионални натпревари
Државни натпревари
Македонски Олимпијади
Други натпревари
Pascal
C/C++
Јава
Други јазици
Powered by
JForum 2.1.8
©
JForum Team