Submission #231815

#TimeUsernameProblemLanguageResultExecution timeMemory
231815CodeTiger927Spiderman (COCI20_spiderman)C++14
21 / 70
1578 ms9136 KiB
using namespace std; #include <iostream> #include <unordered_set> #include <cmath> unordered_set<int> us; int zero = 0; int arr[300005]; int ans[300005]; int main() { int N,K; cin >> N >> K; for(int i = 0;i < N;i++) { int cur; cin >> cur; arr[i] = cur; us.insert(cur); if(cur > K) { zero++; } } for(int i = 0;i < N;++i) { int cur = arr[i] - K; if(cur < 0) { continue; }else if(cur == 0) { ans[i] = zero; continue; } for(int j = 1;j <= sqrt(cur);++j) { if(cur % j == 0) { int counter = cur / j; if(j > K && us.count(j)) ++ans[i]; if(counter > K && counter != j && us.count(counter)) ++ans[i]; } } } for(int i = 0;i < N;i++) { cout << ans[i] << " "; } cout << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...