本文主要是介绍Newcoder Math (数论 韦达定理,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
添加链接描述
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=1e7+10;
ll p[N],m,n;
int main(){p[m++]=1;for(ll k=2;k*k*k<=1e18;k++){ll x=k,y=k*k*k;p[m++]=y;while(y<=(1e18+x)/k/k){//y=kx y=kx-y=k*k*x-y;x=k*k*y-x;swap(x,y);p[m++]=y;}}sort(p,p+m);int t=0;cin>>t;while(t--){cin>>n;cout<<upper_bound(p,p+m,n)-p<<endl;}return 0;
}
这篇关于Newcoder Math (数论 韦达定理的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!