我在我的编译器里显示编译成功可是在这里显示UKE是怎么回事?请神犇救救本蒟蒻
查看原帖
我在我的编译器里显示编译成功可是在这里显示UKE是怎么回事?请神犇救救本蒟蒻
280233
Lee666666楼主2020/10/2 21:14
#include <bits/stdc++.h>
using namespace std;

long long pow(int a, int b) {
    if (b == 0) {
        return 1;
    }
    return a * pow(a, b - 1);
}

const long long mod = pow(2, 31);
long long f[50];

int main() {
    int n;
    scanf("%d", &n);
    f[1] = f[2] = 1;
    for (int i = 3; i <= n; i++) {
        f[i] = f[i - 1] + f[i - 2];
        f[i] %= mod;
        printf("%d\n", f[i]);
    }
    long long k = f[n];
    printf("%lld=", k);
    bool sgn = false;
    for (long long i = 2; i * i <= k; i++) {
        while (k % i == 0) {
            printf("%lld", i);
            k /= i;
            if (k > 1) {
                printf("*");
            }
            else {
                sgn = true;
                break;
            }
        }
        if (sgn) {
            break;
        }
    }
    if (k > 1) {
        printf("%lld", k);
    }
    return 0;
}

2020/10/2 21:14
加载中...