#44850: help!!!


1121228@stu.wghs.tp.edu.tw (你知道我是誰嗎!!??)

學校 : 臺北市私立薇閣高級中學
編號 : 266561
來源 : [60.248.154.139]
最後登入時間 :
2024-11-29 12:36:48
q082. 小明的次方和(簡單版) | From: [218.172.45.148] | 發表日期 : 2024-12-22 08:55

觀察了一下 只有python AC
對C++來講不是簡單題嗎??
我只有83%

以下是我的程式碼:

#include <bits/stdc++.h>

 

long long fpow(long long b, int e) {

    long long r = 1;

    while (e > 0) {

        if (e % 2 == 1) { // 如果指數是奇數

            r *= b;

            if (r > 1e18) return 1e18; // 控制上限,避免結果過大

        }

        b *= b;

        if (b > 1e18) return 1e18; // 控制上限,避免結果過大

        e /= 2;

    }

    return r;

}

 

int main() {

    int a, b, n;

    scanf("%d", & n);

    scanf("%d %d", & a, & b);

 

    long long pa = fpow(a, n);

    long long pb = fpow(b, n);

 

    if (n == 0) {

        printf("能\n2");

    } else {

        n % 2 != 0 ?

            printf("能\n%lld", pa + pb) :

            printf("不能\n");

    }

    return 0;

}

請問有甚麼問題

 
ZeroJudge Forum