高中生程式解題系統:c002: 10696 - f91

若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。

題目連結 http://zerojudge.tw/ShowProblem?problemid=c002

此題看起來像是需要用遞迴的方式來解,但仔細分析後,可觀察到底下的結果:
if( n >= 101 )
    return n - 10;
else
    return 91;

程式碼:
#include <iostream>

using namespace std;

long f91(int n)
{
    if( n >= 101 )
        return n - 10;
    else
        return 91;
}

int main()
{
    int n;
    while( cin >> n )
    {
        if( n == 0 )
            break;
        long result = f91(n);
        cout << "f91(" << n << ") = " << result << endl;
    }

    return 0;
}