Count k prime

#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll p[100005]={0};
ll pi[100001]={0};

void prime(ll *p)
{ for(ll i=3;i<=100001;i=i+2)
{
p[i]=1;

    }

for(ll i=3;i<=100001;i+=2)
{
if(p[i]==1)
{
for(ll j=i*i;j<=100001;j=j+i)
{
p[j]=0;
}
}
}
p[1]=0;
p[0]=0;
p[2]=1;

}
void factor(ll *pi)
{
for(ll i=3;i<=100001;i++)
{
if(p[i]==1)
{
for(ll j=i;j<=100001;j+=i)
{
pi[j]=pi[j]+1;
}
}
}
pi[0]=0;
pi[1]=1;
pi[2]=1;
}
int main() {
prime§;
factor(pi);
for(int i=5;i<=10;i++)
{
cout<<i<<" “<<pi[i]<<” "<<p[i]<<endl;
}
return 0;
}
what is the problem in this code,plz help

Format your code . Use ``` symbol at start and end of code