文章
11
粉丝
125
获赞
10
访问
36.7k
#include <bits/stdc++.h>
#include <unordered_map>
using namespace std;
typedef long long ll;
const int N=1e4+7,INF = 0x3f3f3f3f;;
typedef pair<int, int> PII;
unordered_map<int, int>cnt1;
unordered_map<int, int>cnt2;
int n,m,a; // 点的数量
int prime[N],flag; // 存储所有点到1号点的距离
int st[N]; // 存储每个点的最短距离是否已确定
int init()
{
int cnt=0;
for(int i=2;i<=1000;i++)
{
if(!st[i])
{
prime[cnt++]=i;
for(int j=i*i;j<=1000;j+=i)
{
st[j]=1;
}
}
}
return cnt;
}
int main()
{
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int cnt=init();
while(cin>>n>>a)
{
for(int i=0;i<cnt;i++)
{
int tmp=n;
while(tmp)
{
cnt1[i]+=tmp/prime[i];
tmp/=prime[i];
}
}
int res=0x3f3f3f3f3f;
for(int i=0;i<cnt;i++)
{
...
登录后发布评论
暂无评论,来抢沙发