criyle/codenet-compile-errors huggingface dataset:
Language: C

#include <stdio.h>
#include <math.h>
 
int main(){
  long long n;
  long long count = 0;
  long long k = 0;
  long long s = 1;
  
  
  scanf("%lld", &n);
  
  if(n == 1){
    printf("0\n");
    return 0;
  }
  
  while (n % 2 == 0){
    n /= 2;
    k++;
    if(k == s){
      count++;
      s++;
      k = 0;
    }
  }
  
  k = 0;
  s = 1;
  
  for (i = 3; i <= sqrt(n); i++){
        while (n % i == 0){
            n /= i;
            k++;
            if(k == s){
              count++;
              s++;
              k = 0;
            }
        }
  }
  
  printf("%lld\n", count);
  return 0;
}

Compiler output:
main.c: In function 'main':
main.c:31:8: error: 'i' undeclared (first use in this function)
   31 |   for (i = 3; i <= sqrt(n); i++){
      |        ^
main.c:31:8: note: each undeclared identifier is reported only once for each function it appears in
Language: C

#include <stdio.h>
#include <math.h>
 
int main(){
  long long n;
  long long count = 0;
  long long k = 0;
  long long s = 1;
  
  
  scanf("%lld", &n);
  
  if(n == 1){
    printf("0\n");
    return 0;
  }
  
  while (n % 2 == 0){
    n /= 2;
    k++;
    if(k == s){
      count++;
      s++;
      k = 0;
    }
  }
  
  k = 0;
  s = 1;
  
  for (i = 3; i <= sqrt(n); i++){
        while (n % i == 0){
            num /= i;
            k++;
            if(k == s){
              count++;
              s++;
              k = 0;
            }
        }
  }
  
  printf("%lld\n", count);
  return 0;
}

Compiler output:
main.c: In function 'main':
main.c:31:8: error: 'i' undeclared (first use in this function)
   31 |   for (i = 3; i <= sqrt(n); i++){
      |        ^
main.c:31:8: note: each undeclared identifier is reported only once for each function it appears in
main.c:33:13: error: 'num' undeclared (first use in this function)
   33 |             num /= i;
      |             ^~~
Language: C

#include <stdio.h>

int main(){
  long long n;
  long long count = 0;
  long long k = 0;
  long long s == 1;
  
  
  scanf("%lld", &n);
  
  if(n == 1){
    printf("0\n");
    return 0;
  }
  
  while (n % 2 == 0){
    n /= 2;
    k++;
    if(k == s){
      count++;
      s++;
      k = 0;
    }
  }
  
  k = 0;
  s = 1;
  
  for (i = 3; i <= n; i++){
        while (n % i == 0){
            num /= i;
            k++;
            if(k == s){
              count++;
              s++;
              k = 0;
            }
        }
  }
  
  printf("%lld\n", count);
  return 0;
}

Compiler output:
main.c: In function 'main':
main.c:7:15: error: expected '=', ',', ';', 'asm' or '__attribute__' before '==' token
    7 |   long long s == 1;
      |               ^~
main.c:7:15: error: expected expression before '==' token
main.c:20:13: error: 's' undeclared (first use in this function)
   20 |     if(k == s){
      |             ^
main.c:20:13: note: each undeclared identifier is reported only once for each function it appears in
main.c:30:8: error: 'i' undeclared (first use in this function)
   30 |   for (i = 3; i <= n; i++){
      |        ^
main.c:32:13: error: 'num' undeclared (first use in this function)
   32 |             num /= i;
      |             ^~~
Language: C++

#include <bits/stdc++.h>
using namespace std;

int main(){
  long long N , ans ;
  cin >> N ;
  int n = sqrt(N);
  for(int i=2;i<=n;i++){
    for(int j=1;j<=n;j++){
      long long a = pow(i,j);
      if(N%a==0){
        N /= a;
        ans++;
      }
    }
    while(N%i==0){
      N = /i;
    }
  }
  
  cout << ans << endl;
  
}
  

Compiler output:
a.cc: In function 'int main()':
a.cc:17:11: error: expected primary-expression before '/' token
   17 |       N = /i;
      |           ^
Language: C++

#include<iostream>
#include<vector>
using namespace　std;
vector<pair<long long,long long>>pre(long long n){
vector<pair<long long,long long>>res;
  for(int i=2;i*i<=n;i++){
    if(n%i!=0) continue;
    int num=0;
    while(n%i==0){
      num++;
      n/=i;
    }
    res.push_back({i,n});
  }
  if(n!=1) res.push_back({n,1});
  return res;
}

int main(){
  long long n;
  cin>>n;
  const auto pf=pre(n);
  for(auto p:pf){
    long long e=p.second;
    long long tmp=0,cur=1;
    while(e>=cur) e-=cur++,++tmp;
    res+=tmp;
  }
  cout<<res<<endl;
  return 0;
}

Compiler output:
a.cc:3:7: error: extended character 　 is not valid in an identifier
    3 | using namespace　std;
      |       ^
a.cc:3:7: error: expected nested-name-specifier before 'namespace\U00003000std'
    3 | using namespace　std;
      |       ^~~~~~~~~~~~~~
a.cc:4:1: error: 'vector' does not name a type
    4 | vector<pair<long long,long long>>pre(long long n){
      | ^~~~~~
a.cc: In function 'int main()':
a.cc:21:3: error: 'cin' was not declared in this scope; did you mean 'std::cin'?
   21 |   cin>>n;
      |   ^~~
      |   std::cin
In file included from a.cc:1:
/usr/include/c++/14/iostream:62:18: note: 'std::cin' declared here
   62 |   extern istream cin;           ///< Linked to standard input
      |                  ^~~
a.cc:22:17: error: 'pre' was not declared in this scope
   22 |   const auto pf=pre(n);
      |                 ^~~
a.cc:27:5: error: 'res' was not declared in this scope
   27 |     res+=tmp;
      |     ^~~
a.cc:29:3: error: 'cout' was not declared in this scope; did you mean 'std::cout'?
   29 |   cout<<res<<endl;
      |   ^~~~
      |   std::cout
/usr/include/c++/14/iostream:63:18: note: 'std::cout' declared here
   63 |   extern ostream cout;          ///< Linked to standard output
      |                  ^~~~
a.cc:29:9: error: 'res' was not declared in this scope
   29 |   cout<<res<<endl;
      |         ^~~
a.cc:29:14: error: 'endl' was not declared in this scope; did you mean 'std::endl'?
   29 |   cout<<res<<endl;
      |              ^~~~
      |              std::endl
In file included from /usr/include/c++/14/iostream:41:
/usr/include/c++/14/ostream:744:5: note: 'std::endl' declared here
  744 |     endl(basic_ostream<_CharT, _Traits>& __os)
      |     ^~~~
Language: C++

#include <bits/stdc++.h>
using namespace std;

vector<pair<long long, long long>> a(long long N){
  vector<pair<long long, long long>> pairs;
  for(int i=2;i*i<=N;i++){
    if(N%i!=0) continue;
    
    long long exp=0;
    while(N%i==0){
      N /= i;
      exp++;
    }
    pairs.push_back({N,exp});
  }
  
  if(N!=1) pairs.push_back({N,1});
  return pairs;
}

int main() {
    long long N;
    cin >> N;
  	int res=0;
    auto pairs = a(N);
  	
  	for(auto p:pairs){
      for(int i=1;i<=p.second;i++){
        if(N%pow(p.first,i)!=0) continue;
        N /= pow(p.first,i);
        res++;
        if(N==1){
          cout << res << '\n';
          return 0;
        }
      }
    }
  
  return 0;
}


Compiler output:
a.cc: In function 'int main()':
a.cc:29:13: error: invalid operands of types 'long long int' and '__gnu_cxx::__promote<double>::__type' {aka 'double'} to binary 'operator%'
   29 |         if(N%pow(p.first,i)!=0) continue;
      |            ~^~~~~~~~~~~~~~~
      |            |    |
      |            |    __gnu_cxx::__promote<double>::__type {aka double}
      |            long long int
Language: C++

#include <iostream>
using namespace std;

vector<pair<long long, long long>> IF(long long N){
  vector<pair<long long, long long>> pairs;
  for(int i=2;i*i<=N;i++){
    if(N%i!=0) continue;
    
    long long exp=0;
    while(N%i==0){
      N /= i;
      exp++;
    }
    pairs.push_back({N,exp});
  }
  
  if(N!=1) pairs.push_back({N,1});
  return pairs;
}

int main() {
    long long N;
    cin >> N;
  	int res=0;
    auto pairs = IF(N);
  	
  	for(auto p:pairs){
      for(int i=1;i<=p.second;i++){
        if(N%pow(p.first,i)!=0) continue;
        N /= pow(p.first,i);
        res++;
        if(N==1){
          cout << res << '\n';
          return 0;
        }
      }
    }
  
  return 0;
}

Compiler output:
a.cc:4:1: error: 'vector' does not name a type
    4 | vector<pair<long long, long long>> IF(long long N){
      | ^~~~~~
a.cc: In function 'int main()':
a.cc:25:18: error: 'IF' was not declared in this scope
   25 |     auto pairs = IF(N);
      |                  ^~
a.cc:29:14: error: 'pow' was not declared in this scope
   29 |         if(N%pow(p.first,i)!=0) continue;
      |              ^~~
a.cc:30:14: error: 'pow' was not declared in this scope
   30 |         N /= pow(p.first,i);
      |              ^~~
Language: C++

#include <bits/stdc++.h>
using namespace std;
using ll=long long; 
#define REP(i,n) for(ll i=0;i<(ll)(n);i++)
#define REPD(i,n) for(ll i=n-1;i>=0;i--)
#define FOR(i,a,b) for(ll i=a;i<=(ll)(b);i++)
#define FORD(i,a,b) for(ll i=a;i>=(ll)(b);i--)
#define ALL(x) (x).begin(),(x).end()
#define SIZE(x) ((ll)(x).size())
#define MAX(x) *max_element(ALL(x))
#define MIN(x) *min_element(ALL(x))
#define INF 1000000000000
#define MOD 1000000007
#define MAXR 100000
#define PB push_back
#define MP make_pair
#define F first
#define S second

struct Sieve {
  int n;
  vector<int> f, primes;
  Sieve(int n=1):n(n), f(n+1) {
    f[0] = f[1] = -1;
    for (ll i = 2; i <= n; ++i) {
      if (f[i]) continue;
      primes.push_back(i);
      f[i] = i;
      for (ll j = i*i; j <= n; j += i) {
        if (!f[j]) f[j] = i;
      }
    }
  }
  bool isPrime(int x) { return f[x] == x;}
  vector<int> factorList(int x) {
    vector<int> res;
    while (x != 1) {
      res.push_back(f[x]);
      x /= f[x];
    }
    return res;
  }
  vector<P> factor(int x) {
    vector<int> fl = factorList(x);
    if (fl.size() == 0) return {};
    vector<P> res(1, P(fl[0], 0));
    for (int p : fl) {
      if (res.back().first == p) {
        res.back().second++;
      } else {
        res.emplace_back(p, 1);
      }
    }
    return res;
  }
  vector<pair<ll,int>> factor(ll x) {
    vector<pair<ll,int>> res;
    for (int p : primes) {
      int y = 0;
      while (x%p == 0) x /= p, ++y;
      if (y != 0) res.emplace_back(p,y);
    }
    if (x != 1) res.emplace_back(x,1);
    return res;
  }
};


int main() {
  ll n;
  cin >> n;
  
Sieve s(1001005);
auto fs=s.factor(n);

int ans=0;
for(auto p:fs){
    int x=p.second;
    int b=1;
    while(b<=x){
        x-=b;
        b++;
        ans++;
    }
}
  cout << ans << endl;
}

Compiler output:
a.cc:43:10: error: 'P' was not declared in this scope; did you mean 'PB'?
   43 |   vector<P> factor(int x) {
      |          ^
      |          PB
a.cc:43:11: error: template argument 1 is invalid
   43 |   vector<P> factor(int x) {
      |           ^
a.cc:43:11: error: template argument 2 is invalid
a.cc: In member function 'int Sieve::factor(int)':
a.cc:46:12: error: 'P' was not declared in this scope
   46 |     vector<P> res(1, P(fl[0], 0));
      |            ^
a.cc:46:13: error: template argument 1 is invalid
   46 |     vector<P> res(1, P(fl[0], 0));
      |             ^
a.cc:46:13: error: template argument 2 is invalid
a.cc:46:33: error: expression list treated as compound expression in initializer [-fpermissive]
   46 |     vector<P> res(1, P(fl[0], 0));
      |                                 ^
a.cc:48:15: error: request for member 'back' in 'res', which is of non-class type 'int'
   48 |       if (res.back().first == p) {
      |               ^~~~
a.cc:49:13: error: request for member 'back' in 'res', which is of non-class type 'int'
   49 |         res.back().second++;
      |             ^~~~
a.cc:51:13: error: request for member 'emplace_back' in 'res', which is of non-class type 'int'
   51 |         res.emplace_back(p, 1);
      |             ^~~~~~~~~~~~
Language: C++

#include <bits/stdc++.h>
#define rep(i,n) for (int i=0;i<(n);i++)
using namespace std;
using ll = long long;
using P = pair<int, int>;

int main() {
    ll N;
	int ans = 1;
	cin >> N;

	vector<pair<ll,int> > x;
	ll num = N; 
    int cnt = 0;
	for (ll i = 2; i*i <= N; i++){
        int cnt = 0;
        while(num % i == 0){
            num /= i;
            cnt++;
        }
        x.emplace_back(i,cnt);
	}
    if(num != 0){
        x.emplace_back(num,1);
    }
    int ans = 0;
    for(auto p: x){
        int c = p.second;
        int k = 1;
        while(k <= c){
            ans++;
            c -= k;
            k++;
        }
    }
    cout << ans << endl;
    return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:26:9: error: redeclaration of 'int ans'
   26 |     int ans = 0;
      |         ^~~
a.cc:9:13: note: 'int ans' previously declared here
    9 |         int ans = 1;
      |             ^~~
Language: C

#include<stdio.h>
#include<math.h>
int main()
{
  int n,i,j,c;
  scanf("%d",&n);
  while(n!=1)
  {
    for(i=2;i<=n;i++)
    {
		if(n%i==0)
        {
          c++;
          n=n/i;
        }
    }
  }
  if(n==1)
    printf("0");
  else
    printf("%d",c);
}
return 0;
}

Compiler output:
main.c:23:1: error: expected identifier or '(' before 'return'
   23 | return 0;
      | ^~~~~~
main.c:24:1: error: expected identifier or '(' before '}' token
   24 | }
      | ^
Language: C++

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
#define FOR(i, a, b) for (int i=a; i<(b); i++)
#define F0R(i, a) for (int i=0; i<(a); i++)
#define FORd(i,a,b) for (int i = (b)-1; i >= a; i--)
#define F0Rd(i,a) for (int i = (a)-1; i >= 0; i--)
int main() {
	ios_base::sync_with_stdio(0); cin.tie(0);    
	
    ll N; cin >> N;
    int ans = 0;
    FOR(i, 2, 1000010) {
        int cur = 0;
        while (N % i == 0) {
            cur++;
            N /= i;
        }
        FOR(j, 1, 10000) {
            if (cur < j) break;
            ans++; cur -= j;
        }
    }
    if (N > 1) ans++;
    cout << ans << nl;
	
	return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:26:20: error: 'nl' was not declared in this scope; did you mean 'ynl'?
   26 |     cout << ans << nl;
      |                    ^~
      |                    ynl
Language: C++

#include<bits/stdc++.h>

#define ull unsigned long long int
#define ll long long
#define vi vector<int>
#define mii map<int,int>
#define all(x) x.begin(),x.end()
#define endl "\n"
#define pb push_back
#define MOD 1e9+7
#define INF 0x3f3f3f3f

using namespace std;
int dx[]={-1,0,1,0};
int dy[]={0,1,0,-1};

int main()
{
  ll N; cin >> N;
    int ans = 0;
    FOR(i, 2, 1000010) {
        int cur = 0;
        while (N % i == 0) {
            cur++;
            N /= i;
        }
        FOR(j, 1, 10000) {
            if (cur < j) break;
            ans++; cur -= j;
        }
    }
    if (N > 1) ans++;
    cout << ans <<endl;
}


Compiler output:
a.cc: In function 'int main()':
a.cc:21:9: error: 'i' was not declared in this scope
   21 |     FOR(i, 2, 1000010) {
      |         ^
a.cc:21:5: error: 'FOR' was not declared in this scope
   21 |     FOR(i, 2, 1000010) {
      |     ^~~
Language: C

#include <iostream>
using namespace std;

int main()
{
    int64_t n;
    cin >> n;

    int64_t ans = 0;
    for (int64_t i = 2; i * i <= n; i++)
    {
        int64_t ex_cnt = 0;
        while (n % i == 0)
        {
            ex_cnt++;
            n /= i;
        }

        for (int64_t j = 1;; j++)
        {
            if (ex_cnt < (j + 1) * j / 2)//sequence of differences.3,6,10...
            {
                ans += (j - 1);

                break;
            }
        }
    }

    if (n != 1)
    {
        ans++;
    }

    cout << ans << endl;

    return 0;
}

Compiler output:
main.c:1:10: fatal error: iostream: No such file or directory
    1 | #include <iostream>
      |          ^~~~~~~~~~
compilation terminated.
Language: C++

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

#include <climits>
#include <cmath>

#include <show_vec.hh>

#define DEBUG if(false)

using namespace std;

/*
template<class T> T sum_vec(std::vector<T> v){
  int s = v.size();
  T sum = 0;
  for(int i = 0; i < s; i++){
    sum += v[i];
  }
  return sum;
}
*/

vector<long long> make_prime_list(long long n){
  // n 以下の素数を提示
  vector<long long> Ps(1);
  Ps[0] = 2;
  for(long long i = 3; i < n; i = i+2){ // i is prime ?
    bool is_prime = true;
    for(long long j = 0; j < Ps.size(); j++){
      if(i % Ps[j] == 0){
        is_prime = false;
        break;
      }
    }
    if(is_prime){
      Ps.push_back(i);
    }
  }
  printf("Ps.size() : %d\n", Ps.size());

  return Ps;
}

vector<int> make_prime_list(int n){
  // n 以下の素数を提示
  vector<int> Ps(1);
  Ps[0] = 2;
  for(int i = 3; i <= n; i = i+2){ // i is prime ?
    bool is_prime = true;
    for(int j = 0; j < Ps.size(); j++){
      if(i % Ps[j] == 0){
        is_prime = false;
        break;
      }
    }
    if(is_prime){
      Ps.push_back(i);
    }
  }

  if(Ps.size() == 1){
    Ps.push_back(3);
  }
  if(Ps.size() == 2){
    Ps.push_back(5);
  }
  return Ps;
}

int dif(int n){
  int ans = 0;
  while(true){
    if((ans+1)*(ans+2)/2 <= n){
      ans++;
    }else{
      break;
    }
  }
  return ans;
}

int main(int argc, char *argv[]){
  long long N;
  if(argc == 1){
    cin >> N;
  }else{
    N = atol(argv[1]);
  }


  if(N == 1){
    cout << 0 << endl;
    return 0;
  }
  int root_times = 0;
  long long root = (int)sqrt(N);
  long long NN = N;
  int nnn = (int)sqrt(NN);

  while(true){
    if(NN == root * root){
      root_times++;
      NN = root;
      nnn = root;
      root = sqrt(root);
    }else{
      break;
    }
    DEBUG printf("in first while\n");

  }

  int ten_times = 0;
  while(true){
    if(NN % 10 == 0){
      NN = NN / 10;
      ten_times++;
      nnn = (int)sqrt(NN);
    }else{
      break;
    }
  }

  vector<int> Ps = make_prime_list(nnn);
  //show_vec(Ps);
  int num_of_prime = Ps.size();
  vector<int> Ps_times(num_of_prime, 0);
  for(int i = 0; i < num_of_prime; i++){
    if((NN % Ps[i]) == 0){
      NN = NN / Ps[i];
      Ps_times[i]++;
      i--;
    }
  }

  Ps_times[0] += ten_times;
  Ps_times[2] += ten_times;

  for(int i = 0; i < root_times; i++){
    for(int j = 0; j < num_of_prime; j++){
      Ps_times[j] *= 2;
    }
  }
  vector<int> diffs(num_of_prime, 0);
  for(int i = 0; i < num_of_prime; i++){
    diffs[i] = dif(Ps_times[i]);
  }



  int res = sum_vec(diffs);
  if(res == 0 && N != 1){
    res = 1;
  }
  cout << res << endl;
  return 0;
}


Compiler output:
a.cc:9:10: fatal error: show_vec.hh: No such file or directory
    9 | #include <show_vec.hh>
      |          ^~~~~~~~~~~~~
compilation terminated.
Language: C++

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

#include <climits>
#include <cmath>

//#include <show_vec.hh>

#define DEBUG if(false)

using namespace std;


template<class T> T sum_vec(std::vector<T> v){
  int s = v.size();
  T sum = 0;
  for(int i = 0; i < s; i++){
    sum += v[i];
  }
  return sum;
}


vector<long long> make_prime_list(long long n){
  // n 以下の素数を提示
  vector<long long> Ps(1);
  Ps[0] = 2;
  for(long long i = 3; i < n; i = i+2){ // i is prime ?
    bool is_prime = true;
    for(long long j = 0; j < Ps.size(); j++){
      if(i % Ps[j] == 0){
        is_prime = false;
        break;
      }
    }
    if(is_prime){
      Ps.push_back(i);
    }
  }
  printf("Ps.size() : %d\n", Ps.size());

  return Ps;
}

vector<int> make_prime_list(int n){
  // n 以下の素数を提示
  vector<int> Ps(1);
  Ps[0] = 2;
  for(int i = 3; i <= n; i = i+2){ // i is prime ?
    bool is_prime = true;
    for(int j = 0; j < Ps.size(); j++){
      if(i % Ps[j] == 0){
        is_prime = false;
        break;
      }
    }
    if(is_prime){
      Ps.push_back(i);
    }
  }

  if(Ps.size() == 1){
    Ps.push_back(3);
  }
  if(Ps.size() == 2){
    Ps.push_back(5);
  }
  return Ps;
}

int dif(int n){
  int ans = 0;
  while(true){
    if((ans+1)*(ans+2)/2 <= n){
      ans++;
    }else{
      break;
    }
  }
  return ans;
}

int main(int argc, char *argv[]){
  long long N;
  if(argc == 1){
    cin >> N;
  }else{
    N = atol(argv[1]);
  }


  if(N == 1){
    cout << 0 << endl;
    return 0;
  }
  int root_times = 0;
  long long root = (int)sqrt(N);
  long long NN = N;
  int nnn = (int)sqrt(NN);

  while(true){
    if(NN == root * root){
      root_times++;
      NN = root;
      nnn = root;
      root = sqrt(root);
    }else{
      break;
    }
    DEBUG printf("in first while\n");

  }

  int ten_times = 0;
  while(true){
    if(NN % 10 == 0){
      NN = NN / 10;
      ten_times++;
      nnn = (int)sqrt(NN);
    }else{
      break;
    }
  }

  vector<int> Ps = make_prime_list(nnn);
  //show_vec(Ps);
  int num_of_prime = Ps.size();
  vector<int> Ps_times(num_of_prime, 0);
  for(int i = 0; i < num_of_prime; i++){
    if((NN % Ps[i]) == 0){
      NN = NN / Ps[i];
      Ps_times[i]++;
      i--;
    }
  }

  Ps_times[0] += ten_times;
  Ps_times[2] += ten_times;

  for(int i = 0; i < root_times; i++){
    for(int j = 0; j < num_of_prime; j++){
      Ps_times[j] *= 2;
    }
  }
  vector<int> diffs(num_of_prime, 0);
  for(int i = 0; i < num_of_prime; i++){
    diffs[i] = dif(Ps_times[i]);
  }

  DEBUG {
    show_vec(Ps);
    show_vec(Ps_times);
    show_vec(diffs);
  }


  int res = sum_vec(diffs);
  if(res == 0 && N != 1){
    res = 1;
  }
  cout << res << endl;
  return 0;
}


Compiler output:
a.cc: In function 'int main(int, char**)':
a.cc:153:5: error: 'show_vec' was not declared in this scope
  153 |     show_vec(Ps);
      |     ^~~~~~~~
Language: C++

#include<bits/stdc++.h>
using namespace std;
vector<pair<long long,long long>> prime(long long n){
  vector<pair<long long,long long>> res;
  for(long long p=2;p*p<=n;p++){
    if(n%p!=0) continue;
    int num=0;
    while(n%p==0){
      num++;
      n/=p;
    }
    res.push_back(make_pair(p,num));
  }
  if(n!=1) res.push_back(make_pair(n,1));
  return res;
}

int main(){
  long long N;
  cin>>n;
  auto pf=prime(N);
  long long res=0;
  for(auto p:pf){
    long long e=p.second;
    long long tmp=0,cur=1;
    while(e>=cur) e-=cur++,tmp;
    res+=tmp;
  }
  cout<<res<<endl;
  return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:20:8: error: 'n' was not declared in this scope
   20 |   cin>>n;
      |        ^
Language: C++

#include <bits/stdc++.h>
using namespace std;

int main(){
    long n; cin >> n;
    int count = 0;
    for(int i=2; i*i<=n; i++){
        int countt2 = 0;
        for(int i=2; i*i<=n; i++){
            count2 += 1;
            n /= i;
        }
        for(int j=1; count2 >= j*(j+1)/2; j++)
            count +=1;
    }
    if(n != 1) count += 1;
    cout << count << endl;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:10:13: error: 'count2' was not declared in this scope; did you mean 'countt2'?
   10 |             count2 += 1;
      |             ^~~~~~
      |             countt2
a.cc:13:22: error: 'count2' was not declared in this scope; did you mean 'countt2'?
   13 |         for(int j=1; count2 >= j*(j+1)/2; j++)
      |                      ^~~~~~
      |                      countt2
Language: C++

#include <iostream>
// #include <bits/stdc++.h>
#include <vector>

using namespace std;

vector<pair<long long, long long>> prime_factorize(long long N) {
	vector<pair<long long, long long>> res;
	for(long long i = 2; i * i < N; i++) {
		if (N % i != 0) { continue; }
		long long ex = 0;

		while (N % i == 0) {
			++ex;
			N /= i;
		}
		res.push_back({i, ex});
	}
	if (N != 1) {
		res.push_back({N, 1});
	}
	return res;
}


int main() {
	long long N;
	cin >> N;

	if ( N <= 1) {
		cout << 0 << endl;
		return 0;
	}

	auto list = prime_factorize(N);
	//for (auto a : list) {
	//		cout << "{ " << a.first << " " << a.second << " }" << endl;
	//}
	//cout << endl;

	int ans = 0;
  for (auto p : list) {
    int x = p.second;
    int b = 1;
    while (b <= x) {
      x -= b;
      b++;
      ++ans;
    }
  }
  cout << ans << endl;
	cout << res << endl;
}


Compiler output:
a.cc: In function 'int main()':
a.cc:52:17: error: 'res' was not declared in this scope
   52 |         cout << res << endl;
      |                 ^~~
Language: C++

#include <stdio.h>
#include <iostream>
#include <vector>
using namespace std;

int main() {
	
	long long N;
	vector<int> insuu;
	cin >> N;
	double _N = sqrt(N);

	for (int i = 2;i <= _N;i++) {
		int count = 0;
		while (N % i == 0) {
			count++;
			N /= i;
		}
		if (count != 0) {
			insuu.push_back(count);
		}
		if (N == 1)break;
	}

	if (N > _N) {
		insuu.push_back(1);
	}

	int ans = 0;
	
	for (int i = 0;i < insuu.size();i++) {
		for (int j = 1;j <= insuu.at(i);j++) {
			ans++;
			insuu.at(i) -= j;
		}
	}

	cout << ans << endl;

	return 0;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:11:21: error: 'sqrt' was not declared in this scope
   11 |         double _N = sqrt(N);
      |                     ^~~~
Language: Java

import java.util.*;
import java.math.*;

public class Main{
    public static void main(final String[] args){
        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        int e = 1;
        long div;

        if(N == 1){
            System.out.println(0);
            return;
        }

        while(true){
            if(math.pow(q - 1, 2) > N) break;

            div = (long) Math.pow(q, e);
            if(N % div == 0){
                N /= div;
                ans++;
                e++;
                continue;
            }

            while(N % q == 0){
                N /= q;
            }
            q++;
            e = 1;
        }

        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}


Compiler output:
Main.java:19: error: cannot find symbol
            if(math.pow(q - 1, 2) > N) break;
               ^
  symbol:   variable math
  location: class Main
1 error
Language: Java

import java.util.*;
import java.math.*;

public class Main{
    public static void main(final String[] args){
        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        int e = 1;
        long div;

        while(q * q <= N){
            div = (long) Math.pow(q, e);
            if(N % div == 0){
                N /= div;
                ans++;
                e++;
                continue;

            while(N % q == 0){
                N /= q;
            }
            q++;
            e = 1;
            }
        }

        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}


Compiler output:
Main.java:21: error: unreachable statement
            while(N % q == 0){
            ^
1 error
Language: Java

import java.util.*;
import java.math.*;

public class Main{
    public static void main(final String[] args){
        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        long div;

        if(N == 1){
            System.out.println(0);
            return;
        }

        while(q * q <= N){
            div = (long) Math.pow(q, e);
            if(N % div == 0){
                N /= div;
                ans++;
                e++;
            }else{
                while(N % q == 0){
                    N /= q;
                }
                q++;
                e = 1;
            }
        }
        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}


Compiler output:
Main.java:18: error: cannot find symbol
            div = (long) Math.pow(q, e);
                                     ^
  symbol:   variable e
  location: class Main
Main.java:22: error: cannot find symbol
                e++;
                ^
  symbol:   variable e
  location: class Main
Main.java:28: error: cannot find symbol
                e = 1;
                ^
  symbol:   variable e
  location: class Main
3 errors
Language: Java

import java.util.Map.Entry;
import java.util.*;
import java.math.*;
import org.w3c.dom.css.Counter;

public class Main{
    public static void main(final String[] args){
        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        long e = 1;
        long div;
        int loops = 43;

        if(N == 1){
            System.out.println(0);
            return;
        }

        while(1){
            div = (long) Math.pow(q, i);
            if(N % div == 0){
                N /= div;
                ans++;
                e++;
            }else{
                while(N % q == 0){
                    N /= q;
                }
                q++;
                if(q * q > N){
                    break;
                }
                e = 1;
            }
        }
        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}


Compiler output:
Main.java:21: error: incompatible types: int cannot be converted to boolean
        while(1){
              ^
Main.java:22: error: cannot find symbol
            div = (long) Math.pow(q, i);
                                     ^
  symbol:   variable i
  location: class Main
2 errors
Language: Java

import java.util.Map.Entry;
import java.util.*;
import java.math.*;
import org.w3c.dom.css.Counter;

public class Main{
    public static void main(final String[] args){
        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        long e = 1;
        long div;
        int loops = 43;

        if(N == 1){
            System.out.println(0);
            return;
        }

        while(1){
            div = (long) Math.pow(q, i);
            if(N % div == 0){
                N /= div;
                ans++;
                e++;
            }else{
                while(N % q == 0){
                    N /= q;
                }
                q++;
                if(q * q > N){
                    break;
                e = 1;
            }
        }
        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}


Compiler output:
Main.java:43: error: reached end of file while parsing
}
 ^
1 error
Language: Java

# Note

```Java
import java.util.Map.Entry;
import java.util.*;
import java.math.*;
import org.w3c.dom.css.Counter;

public class Main{
    public static void main(final String[] args){

        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        long div;
        int loops = 43;

        if(N == 1){
            System.out.println(0);
            return;
        }

        for(int i = 1; i < loops; i++){
            div = (long) Math.pow(q, i);
            if(N % div == 0){
                ans++;
                N /= div;
            }else{
                while(N % q == 0){
                    N /= q;
                }
                q++;
                i = 1;
            }
        }
        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}
```


Compiler output:
Main.java:1: error: illegal character: '#'
# Note
^
Main.java:3: error: illegal character: '`'
```Java
^
Main.java:3: error: illegal character: '`'
```Java
 ^
Main.java:3: error: illegal character: '`'
```Java
  ^
Main.java:4: error: class, interface, enum, or record expected
import java.util.Map.Entry;
^
Main.java:5: error: class, interface, enum, or record expected
import java.util.*;
^
Main.java:6: error: class, interface, enum, or record expected
import java.math.*;
^
Main.java:7: error: class, interface, enum, or record expected
import org.w3c.dom.css.Counter;
^
Main.java:44: error: illegal character: '`'
```
^
Main.java:44: error: illegal character: '`'
```
 ^
Main.java:44: error: illegal character: '`'
```
  ^
Main.java:45: error: reached end of file while parsing
12 errors
Language: Java

# Note

```Java
import java.util.Map.Entry;
import java.util.*;
import java.math.*;
import org.w3c.dom.css.Counter;

public class Main{
    public static void main(final String[] args){

        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        int e = 1;
        long div;
        int loops = 43;

        //1だった時はさっさと終わらす
        if(N == 1){
            System.out.println(0);
            return;
        }

        for(int i = 1; i < loops; i++){
            div = (long) Math.pow(q, i);
            if(N % div == 0){
                ans++;
                N /= div;
            }else{
                while(N % q == 0){
                    N /= q;
                }
                q++;
                i = 1;
                break;
            }
        }
        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}
```


Compiler output:
Main.java:1: error: illegal character: '#'
# Note
^
Main.java:3: error: illegal character: '`'
```Java
^
Main.java:3: error: illegal character: '`'
```Java
 ^
Main.java:3: error: illegal character: '`'
```Java
  ^
Main.java:4: error: class, interface, enum, or record expected
import java.util.Map.Entry;
^
Main.java:5: error: class, interface, enum, or record expected
import java.util.*;
^
Main.java:6: error: class, interface, enum, or record expected
import java.math.*;
^
Main.java:7: error: class, interface, enum, or record expected
import org.w3c.dom.css.Counter;
^
Main.java:47: error: illegal character: '`'
```
^
Main.java:47: error: illegal character: '`'
```
 ^
Main.java:47: error: illegal character: '`'
```
  ^
Main.java:48: error: reached end of file while parsing
12 errors
Language: Java

import java.util.Map.Entry;
import java.util.*;
import java.math.*;
import org.w3c.dom.css.Counter;

public class Main{
    public static void main(final String[] args){

        final Scanner sc = new Scanner(System.in);
        long N = sc.nextLong();
        int ans = 0;
        long q = 2;
        int e = 1;
        long div;
        int loops = 43;

        //1だった時はさっさと終わらす
        if(N == 1){
            System.out.println(0);
            return;
        }

        for(int i = 1; i < loops; i++){
            div = Math.pow(q, i);
            if(N % div == 0){
                ans++;
                N = (long) (N / div);
            }else{
                while(N % q == 0){
                    N /= q;
                }
                q++;
                i = 1;
                break;
            }
        }
        if(N != 1){
            ans++;
        }

        System.out.println(ans);
    }
}


Compiler output:
Main.java:24: error: incompatible types: possible lossy conversion from double to long
            div = Math.pow(q, i);
                          ^
1 error
Language: C++

#include<iostream>
#include<vector>
#include<pair>
using namespace std;
using ll=long long;
vector<long long,long long>prime=factorize(long long n){
  vector<long long,long long> res;
  for(long long p=2;p*p<=n;++p){
    if(n%p!=0)continue;
    int num=0;
    while(n%p!=0){
      num++;
      n/=p;
    }
    res.push_back(make_pair(n,1));
  }
  if(n!=1) res.push_back(make_pair(n,1));
  return res;
}


int main(){
  ll n;
  cin>>n;
  auto pf=prime_factorize(n);
  ll res=0;
  for(auto p:pf){
    ll e=p.second;
    ll tmp=0,cur=1;
    while(e>=cur) e-=cur++,tmp++;
    res+=tmp;
  }
  cout<<res<<endl;
  return 0;
}

Compiler output:
a.cc:3:9: fatal error: pair: No such file or directory
    3 | #include<pair>
      |         ^~~~~~
compilation terminated.
Language: C++

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef vector<bool> vb;
typedef vector<int> vi;
typedef vector<ll> vl;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
typedef map<int,int> mii;
typedef map<ll,ll> mll;
typedef vector<pii> vii;
typedef vector<pll> vll;
#define fi first
#define se second
#define pi 3.141592653589793
#define mod 1000000007
#define pb push_back
#define all(v) v.begin(),v.end()
#define rall(v) v.begin(), v.end(), greater<ll>()
#define tc int t;cin>>t;while(t--)
#define pqmax priority_queue<int>
#define pqmin priority_queue<int,vi,greater<int>>
#define fast_io ios_base::sync_with_stdio(0), cin.tie(NULL)
#define tc_g int tt;cin>>tt;for(int ti=1;ti<=tt;ti++)
#define case_g "Case #"<<ti<<": "
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
typedef tree<int, null_type, less_equal<int>, rb_tree_tag, tree_order_statistics_node_update> ordered_multiset;
typedef tree<int, null_type, less<int>, rb_tree_tag, tree_order_statistics_node_update> ordered_set;
typedef tree<int, int, less<int>, rb_tree_tag, tree_order_statistics_node_update> ordered_map;
using namespace std;
int main() {
    unordered_map<ll, ll> mp;
    ll n;
    cin >> n;
    ll temp = n;
    while(temp % 2 == 0) {
        ++mp[2];
        temp /= 2;
    }
    temp = n
    for(int i = 3; i * i <= n; i += 2) {
        while(temp % i == 0) {
            ++mp[i];
            temp /= i;
        }
    }
    ll ans = 0;
    for(auto num: mp) {
        ans += floor((sqrt(1.0  + 8 * num.second) - 1.0) / 2);
    }
    (ans == 0)?cout << 1:cout << ans;
}


Compiler output:
a.cc: In function 'int main()':
a.cc:43:13: error: expected ';' before 'for'
   43 |     temp = n
      |             ^
      |             ;
   44 |     for(int i = 3; i * i <= n; i += 2) {
      |     ~~~      
a.cc:44:20: error: 'i' was not declared in this scope
   44 |     for(int i = 3; i * i <= n; i += 2) {
      |                    ^
Language: C++


// Problem : D - Div Game
// Contest : AtCoder - AtCoder Beginner Contest 169
// URL : https://atcoder.jp/contests/abc169/tasks/abc169_d
// Memory Limit : 1024 MB
// Time Limit : 2000 ms
// Powered by CP Editor (https://github.com/cpeditor/cpeditor)

//mst,pq,mp,st,q
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define io ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define pb push_back
#define all(x) begin(x),end(x)

int mod = 1e9+7;
int inf = 4e18;
const int N = 5e5+5;
inline give(int x)
{
	return ((x)*(x+1))/2;
}
signed main()
{
    io
    int tt = 1;
    //cin>>tt;
    while(tt--)
    {
    	vector<int> v;
    	for(int i=1;i<=100000;++i)
    	v.pb(give(i));
		int n;
		cin>>n;
		int ans = 0;
		for(int i=2;i*i<=n;++i)
		{
			int ct = 0;
			while(n%i==0)
			{
				ct++;
				n/=i;
			}
			if(ct!=0){
			auto it = upper_bound(all(v),ct) - v.begin();
			ans+= it;
			}
		}
		if(n>1)
		++ans;
		cout<<ans;    	
    }
    return 0;
}


Compiler output:
a.cc:20:8: error: ISO C++ forbids declaration of 'give' with no type [-fpermissive]
   20 | inline give(int x)
      |        ^~~~
Language: C++

#include<iostream>
#include<unordered_map>
#include<bitset>
#include<math.h>
#include<vector>
#include<set>
#include<algorithm>
#include<ctype.h>
#include<unordered_set>
#include<string>
#include<iomanip>
#include<queue>
#include<limits>
#include<map>
#include<stack>
#include<iterator>
#include<cstring>

#include<deque>
#define pi 3.141592653589793238
#include<chrono>

#define MOD 1000000007
#define INF 999999999999999999 
#define pb push_back
#define ff first
#define ss second
#define mt make_tuple
#define ll long long
#define fast ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
#define f0 get<0>
#define f1 get<1>
#define f2 get<2>
#define db double
using namespace std;

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

int main() {
    //freopen("input.txt", "r", stdin);
    //freopen("output.txt", "w", stdout);
    fast;
    ll T = 1, i, j;
    
    //cin >> T;
    while (T--) {
        ll n;
        cin >> n;
        ll nn = n;
        ll count = 0;
        ll ans = 0;
        if(prime(n)){
            cout << 1 ;
            return 0;
        }
        for(i = 2 ; i * i <= nn; i++){
            
            ll pow = 0;
            if(n % i == 0){
                while(n % i == 0){
                    pow++;
                    n = n / i;
                }
                
            }
            ans += (-1 + sqrt(1 + 8 * pow)) / 2;
            //cout << n << endl;
        }
        cout << ans;
        
    }
    
    return 0;
}


Compiler output:
a.cc: In function 'int main()':
a.cc:52:12: error: 'prime' was not declared in this scope
   52 |         if(prime(n)){
      |            ^~~~~
Language: C++

#include<bits/stdc++.h>
using namespace std;

using ll=long long;

int main(){

  ll num;
  cin >> num;
  ll count=1;

  map<ll,ll> mp;
  vector<pair<ll,ll>> nums;
  ll time;

  if(num==1){
    cout << 0 << endl;
    return 0;
  }else{
    while(1){
      count++;
      time=0;
      if(count*count>numCP && nums.size()==0){
        nums.emplace_back(numCP,1);
        break;
      }
      if(num%count==0){
        time++;
        num/=count;
        while(1){
          if(num%count!=0){
            nums.emplace_back(count,time);
            break;
          }else if(num%count==0){
            time++;
            num/=count;
          }
        }
      }
      if(num==1){
        break;
      }
    }

    for(auto& i:nums){
      //cout << i.first << ":" << i.second << endl;
      ll t=1;
      ll now=i.first;
      mp[i.first]++;
      i.second--;
      while(1){
        t++;
        if(i.second<t){
          break;
        }else{
          now*=i.first;
          mp[now]++;
          i.second-=t;
        }
      }
    }

    /*for(auto& v:mp){
      cout << v.first << ":" << v.second << endl;
    }*/
    cout << mp.size() << endl;
  }


}

Compiler output:
a.cc: In function 'int main()':
a.cc:23:22: error: 'numCP' was not declared in this scope
   23 |       if(count*count>numCP && nums.size()==0){
      |                      ^~~~~
Language: C++

#include <bits/stdc++.h>
using namespace std;
 
int main() {
  int64_t N;
  cin >> N;
  vector<pair<int64_t, int>> table;
  
  for (int i = 2; i*i < N; i++) {
    int x = 0;
    while (N % i == 0) {
      N /= i;
      x++ ;
    }
    if (x != 0) {
    table.emplace_back(i,x);
    }
  }
  
  if (N != 1) {
    table.emplace_back(N, 1);
  }
  
  
  /*for (int i = 0; i < table.size(); i++) {
    cout << table.at(i).first << " " << table.at(i).second <<endl;
  }*/
  
  int ans = 0;
  
  for (ll i = 0; i < table.size(); i++) {
    int y = table.at((int)i).second;
    int b = 1;
    while (y >= b ) {
      ans++ ;
      y -= b; 
      b++ ;
    }
  }
  
   cout << ans << endl;
  
  return 0;
}


Compiler output:
a.cc: In function 'int main()':
a.cc:31:8: error: 'll' was not declared in this scope
   31 |   for (ll i = 0; i < table.size(); i++) {
      |        ^~
a.cc:31:18: error: 'i' was not declared in this scope
   31 |   for (ll i = 0; i < table.size(); i++) {
      |                  ^
Language: C++

#include<bits/stdc++.h>
using namespace std;

using ll=long long;

int main(){

  ll num;
  cin >> num;
  ll count=1;

  map<ll,ll> mp;
  vector<pair<ll,ll>> nums;
  ll time;

  if(num==1){
    cout << 0 << endl;
    return 0;
  }else{
    nums.emplace_back(num,1);
    while(1){
      count++;
      time=0;
      if(count*count>numCP){
        break;
      }
      if(num%count==0){
        time++;
        num/=count;
        while(1){
          if(num%count!=0){
            nums.emplace_back(count,time);
            break;
          }else if(num%count==0){
            time++;
            num/=count;
          }
        }
      }
      if(num==1){
        break;
      }
    }

    for(auto& i:nums){
      //cout << i.first << ":" << i.second << endl;
      ll t=1;
      ll now=i.first;
      mp[i.first]++;
      i.second--;
      while(1){
        t++;
        if(i.second<t){
          break;
        }else{
          now*=i.first;
          mp[now]++;
          i.second-=t;
        }
      }
    }

    /*for(auto& v:mp){
      cout << v.first << ":" << v.second << endl;
    }*/
    cout << mp.size() << endl;
  }


}

Compiler output:
a.cc: In function 'int main()':
a.cc:24:22: error: 'numCP' was not declared in this scope
   24 |       if(count*count>numCP){
      |                      ^~~~~
Language: C++

#include<bits/stdc++.h>
using namespace std;
long long n,ans;
int main(){
  cin >> n;
  for(int long long int i = 2; i <= sqrt(n); i++){
    long long x = i;
    while(n % x == 0){
      n = n/x;
      x = x*i;
      ans++;
    }
    while(n%i == 0) n = n/i;
  }
  if(n != 1) ans++;
  cout << ans << endl;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:6:7: error: two or more data types in declaration of 'i'
    6 |   for(int long long int i = 2; i <= sqrt(n); i++){
      |       ^~~
a.cc:6:32: error: 'i' was not declared in this scope
    6 |   for(int long long int i = 2; i <= sqrt(n); i++){
      |                                ^
Language: C++

#include<bits/stdc++.h>
using namespace std;
long long n,ans;
int main(){
  cin >> n;
  for(int long long int i = 2; i <= sqrt(n); i++){
    long long int x = i;
    while(x % i == 0){
      n = n/x;
      x = x*i;
      ans++;
    }
    while(n%i == 0) n = n/i;
  }
  if(n != 1) ans++;
  cout << ans << endl;
}

Compiler output:
a.cc: In function 'int main()':
a.cc:6:7: error: two or more data types in declaration of 'i'
    6 |   for(int long long int i = 2; i <= sqrt(n); i++){
      |       ^~~
a.cc:6:32: error: 'i' was not declared in this scope
    6 |   for(int long long int i = 2; i <= sqrt(n); i++){
      |                                ^
Language: C

#include <bits/stdc++.h>
using namespace std;

#include <bits/stdc++.h>
using namespace std;
using Graph = vector<vector<int>>;
#define rep(i, a) for (int i = 0; i < (a); i++ )
#define FOR(i, m, n) for(int i = m; i < n; i++)
 
typedef pair<int,int> P;
typedef long long ll;
 
const int INF = 1001001001;
const int MOD = 1000000007;
const double PI=acos(-1);
//----------------------------------------------------------------

vector<pair<long long, long long> > prime_factorize(long long n) {
    vector<pair<long long, long long> > res;
    for (long long p = 2; p * p <= n; ++p) {
        if (n % p != 0) continue;
        int num = 0;
        while (n % p == 0) { ++num; n /= p; }
        res.push_back(make_pair(p, num));
    }
    if (n != 1) res.push_back(make_pair(n, 1));
    return res;
}

int main(){
    ll N;
    cin >> N;

    auto F = prime_factorize(N);
    int ans = 0;
    for (int i=0; i<F.size(); i++) {
        int j=1;
        while(1) {
            F[i].second -= j;
            ans++;
            if (F[i].second - (j+1) <0) {
                break;
            }
            j++;
        }
    }

    cout << ans << endl;


}


Compiler output:
main.c:1:10: fatal error: bits/stdc++.h: No such file or directory
    1 | #include <bits/stdc++.h>
      |          ^~~~~~~~~~~~~~~
compilation terminated.