藍橋杯訓練----歐拉函數,天天向上,遞歸

也許,年少時不能遇見太過驚豔的人,就像你不能做我的詩,而我無法成爲你的夢!

#include <iostream>
#include <cstdio>
#include <algorithm>
#include <string>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <stack>
#include <queue>
#include <set>
#include <map>
#include <vector>
#include <ctime>
#include <cctype>
#include <bitset>
#include <utility>
#include <sstream>
#include <complex>
#include <iomanip>
#define inf 0x7ffffff
#define P pair<int,int>
typedef long long ll;
using namespace std;
const ll mod=1e9+7;
ll ol(long long x)
{
    ll ans=x;
    for(int i=2; i*i<=x; i++)
    {
        if (x%i==0)
        {
            ans=ans*(i-1)/i;	
            while(x%i==0)
                x=x/i;
        }
    }
    if (x>1)
        ans=ans*(x-1)/x;
    return ans;
}
int main()
{
	ll n;
    cin>>n;
    cout<<ol(n)<<endl;
    return 0;
}

 

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        int n=sc.nextInt();
        int[] num=new int[n+1];
        int[][] dp=new int[5][n+1];
        for (int i=1; i<=n; i++)
            num[i]=sc.nextInt();
        sc.close();
        for (int i=1; i<=n; i++){
            dp[1][i]=1;
            for (int j=i+1; j<=n; j++){
                if(num[j]>num[i]){
                    dp[2][j]+=dp[1][i];
                    dp[3][j]+=dp[2][i];
                    dp[4][j]+=dp[3][i];
                }
            }
        }
        long sum=0L;
        for(int i=4;i<=n;i++)
            sum+=dp[4][i];
        System.out.println(sum);
    }
}

import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        float x=sc.nextFloat();
        float n=sc.nextFloat();
        if (n<5)
            System.out.printf("%.2f", fac(x, n));
        else
            System.out.printf("%.3f", fac(x, n));
    }

    public static float fac(float x, float n) {
        if (n==0) 
			return 1;
        if (n==1) 
			return 2*x;
        return (float)(2.0*x*fac(x, n-1)-2.0*(n - 1)*fac(x, n - 2));
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章