某JSOI夏令营出题人啊,naive!
你还是得学习个,搬这种原题不得被我一眼看穿?
求个n^2的约数除以二,向上取整。
#include<bits/stdc++.h> using namespace std; typedef long long ll; ll n=0,ans=1;int cur=0; int main(){ cin>>n; for(int i=2;1LL*i*i<=n;i++){ if(n%i==0){ cur=0; while(n%i==0)cur++,n/=i; ans*=(cur<<1|1); } } if(n>1)ans*=3; cout<<((ans+1)>>1); } //JSOI 2013 //Naive
时间: 2024-10-10 12:30:34