Submission #14750696


Source Code Expand

//Coded by Abhijay Mitra
#include <iostream>
#include <stdlib.h>
#include <algorithm>
#include <cstdio>
#include <numeric>
#include <cstring>
#include <numeric>
#include <vector>
#include <iterator> 
#include <map>
#include <set>
#include <climits>
#include <queue>
#include <cmath>
#include <stack>
#include <cctype>
#include <bitset>
// #include <bits/stdc++.h>
#define double long double
#define int long long int
#define ll int
#define ibs ios_base::sync_with_stdio(false)
#define cti cin.tie(0)
#define bp __builtin_popcount
#define pb push_back
#define koto_memory(a) cout<<(sizeof(a)/1048576.0)<<" MB";
#define res(v) v.resize(unique(v.begin(), v.end()) - v.begin());
#define cnt_res(v) std::distance(v.begin(),std::unique(v.begin(), v.end())); 
#define timer cerr << "Time elapsed : " << 1.0 * clock() / CLOCKS_PER_SEC << " sec \n";
using vi = std::vector<int>;
using vvi = std::vector<vi>;
using pii = std::pair<int,int>;
using vpii = std::vector<pii>;
using vvpii = std::vector<vpii>;
#define mp         make_pair
#define rep(i,a,b) for (int i = a; i <= b; i++)
#define per(i,b,a) for (int i = b; i >= a; i--)
#define all(x)     x.begin(), x.end()
using namespace std;
const int N=2e6+10;
const int inf = /*0x3f3f3f3f*/1e18+10;
// const ll M = 998244353 ; // Mulo
// const int M = 1e9+7 ; // Mulo
const double Pi = 3.14159265;
#define F first
#define S second
int sp[(int)1e7+2LL];
bool v[(int)1e7+2LL];
void Sieve(){
  for (int i = 2; i < 1e7+1; i += 2)  sp[i] = 2;//even numbers have smallest prime factor 2
  for (int  i = 3; i < 1e7+1; i += 2){
    if (!v[i]){
      sp[i] = i;
      for (int j = i; (j*i) < 1e7+1; j += 2){
        if (!v[j*i])  v[j*i] = true, sp[j*i] = i;
      }
    }
  }
}
void solve(){
  int n;cin>>n;
  Sieve();
  int cnt=0;
  rep(i,1,n){
    int t=1,j=i;
    while(1){
      int spf=sp[j],c=0;
      if(sp[j]==0)break;
      while((j%spf)==0)j/=spf,c++;
      t*=c+1;
      if(j==1)break;
    }
    cnt+=t*i;
  }
  cout<<cnt;
}
int32_t main()
{
  ibs;cti;
  solve()
  /*,cout<<"\n"*/;
  // cout<<"\n";
  int xx=0;
  // int t;cin>>t;while(t--){/*xx++;cout<<"Case "<<xx<<":\n"*/;solve();cout<<"\n";}
  return 0;
}

Submission Info

Submission Time
Task D - Sum of Divisors
User abj
Language C++ (GCC 9.2.1)
Score 400
Code Size 2235 Byte
Status AC
Exec Time 1555 ms
Memory 91488 KiB

Compile Error

./Main.cpp: In function ‘int32_t main()’:
./Main.cpp:84:7: warning: unused variable ‘xx’ [-Wunused-variable]
   84 |   int xx=0;
      |       ^~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 400 / 400
Status
AC × 3
AC × 20
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt
All hand_01.txt, random_01.txt, random_02.txt, random_03.txt, random_04.txt, random_05.txt, random_06.txt, random_07.txt, random_08.txt, random_09.txt, random_10.txt, sample_01.txt, sample_02.txt, sample_03.txt, sq_01.txt, sq_02.txt, sq_03.txt, sq_04.txt, sq_05.txt, sq_06.txt
Case Name Status Exec Time Memory
hand_01.txt AC 165 ms 91308 KiB
random_01.txt AC 1555 ms 91420 KiB
random_02.txt AC 1234 ms 91452 KiB
random_03.txt AC 1535 ms 91384 KiB
random_04.txt AC 790 ms 91388 KiB
random_05.txt AC 1518 ms 91420 KiB
random_06.txt AC 607 ms 91420 KiB
random_07.txt AC 1526 ms 91448 KiB
random_08.txt AC 953 ms 91452 KiB
random_09.txt AC 1521 ms 91488 KiB
random_10.txt AC 256 ms 91420 KiB
sample_01.txt AC 162 ms 91364 KiB
sample_02.txt AC 161 ms 91400 KiB
sample_03.txt AC 1512 ms 91388 KiB
sq_01.txt AC 1519 ms 91416 KiB
sq_02.txt AC 1511 ms 91420 KiB
sq_03.txt AC 1517 ms 91416 KiB
sq_04.txt AC 1521 ms 91384 KiB
sq_05.txt AC 1513 ms 91388 KiB
sq_06.txt AC 1527 ms 91372 KiB