題目的大概意思是有兩個變數x,y,然後x,y都是小於n的,有乙個函式f(x,y),另外f(x*k,y*k) = f(x,y),問f(x,y)在x,y都不超過n的時候的取值個數,很明顯的就是記下來的想x,y必定是互素的,當然有乙個另外就是1,1。
求解,很明顯的就是轉化為尤拉phi函式問題,求出1-n中與n互素的個數,然後x,y可以互換位置,求得的結果要乘以2。
#include "stdio.h"
#include "string.h"
#include "math.h"
#include #include #include #include #include #include #include using namespace std;
#define maxm 1
#define maxn 1
#define max(a,b) a > b ? a : b
#define min(a,b) a < b ? a : b
#define mem(a,b) memset(a,b,sizeof(a))
int mod = 1000000007;
double pi = acos(-1.0);
double eps = 1e-6;
typedef structedge;
edge edge[maxm];
int head[maxn];
int knum;
typedef long long ll;
void addedge(int f, int t, int w)
ll phi[50005];
int n;
void func()
} }for(int i = 2; i <= 50000; i ++)
}int main()
{// freopen("d:\\test.txt", "r", stdin);
func();
while(cin>>n){
if( n < 1 )
break;
cout<
實驗課 簡單數學(基本數學題
link.description 問題很簡單,求x n.請編寫pow 函式.宣告如下 int pow int x,int n,int p pow的功能是實現x n,最後 個引數p沒有用。系統會自動在程式的最後加上如下 int main input x和n 0 x,n 2 31 1 output x ...
杭電試題1017之簡單數學題
做到這道題大多數人你可能會遇到p resentation error。這個比較正常,但是此題是有點不正常,題目的大意是給定的兩個整數n和m,數一數的整數對 a,b 要求是0 a b 它的格式是多輸入的第一行是乙個整數n,然後空一行,隨後由n個輸入塊。每個輸入塊是在問題描述中表示的格式。輸出格式包括n...
5773 NOIP2008模擬 簡單數學題
description 話說,小x是個數學大佬,他喜歡做數學題。有一天,小x想考一考小y。他問了小y一道數學題。題目如下 對於乙個正整數n,存在乙個正整數t 0 使得的值是正整數。小x給出n,讓小y給出所有可能的t。如果小y不回答這個神奇的大佬的簡單數學題,他學神的形象就會支離破碎。所以小y求你幫他...