F函式(水題)
阿新 • • 發佈:2019-01-29
【問題描述】
最近cyz一直在研究一個函式,函式是這樣的
If X<=100 F[x]=F[F[x+11]]
If X>=101 F[x]=X-10
現在cyz需要知道一些值對應的函式值。
【輸入格式】
輸入檔案包括若干行(最多2500000行),每行一個正整數X(X<=1000000)。
最後一行以0結束.注意0不是要求的X,只是一個結束標記。
【輸出格式】
對應每個要求的X值,每行輸出一個對應的F[x]函式值。
【樣例輸入】
100
101
0
【樣例輸出】
91
91
【資料規模】
對於10%以內的資料,X<=10
對於30%以內的資料,X<=100
對於100%以內的資料,按題目描述
#include<bits/stdc++.h>
using namespace std;
const int maxn=2500010;
int x[maxn],m=0,a = 1;
int f(int b)
{
if(b<=100)
return f (f (b + 11));
if(b>=101)
return (b-10);
}
int main()
{
freopen("f.in","r",stdin);
freopen("f.out","w",stdout);
while(scanf ("%d", &a) == 1 && a)
printf ("%d\n", f(a));
return 0;
}