您的答案為: 4 正確答案為: 0
通過檢測
您的答案為: 1 正確答案為: 0
您的答案為: 3 正確答案為: 0
通過檢測
通過檢測
通過檢測
通過檢測
通過檢測
通過檢測
測資只有一行
可以印出來看。
您的答案為: 4 正確答案為: 0
通過檢測
您的答案為: 1 正確答案為: 0
您的答案為: 3 正確答案為: 0
通過檢測
通過檢測
通過檢測
通過檢測
通過檢測
通過檢測
#include <iostream>
using namespace std;
#define ull unsigned long long
#define maxn 70
ull A[maxn];
//==============================================
int main() {
A[0]=0; A[1]=1; A[2]=2;
for(int i=3; i<=maxn; i++){
A[i]=A[i-1]+A[i-2]+A[i-3];
//cout<<A[i]<<endl;
}
//cout<<A[maxn]<<endl;
//cout<<1000000000000000000<<endl;
ull n,m;
while(cin>>n>>m){
if(n>m) swap(n,m);
int cnt, k=0;
while(A[k]<n) k++;
if(A[k]>m) cout<<"0\n";
else {
cnt=1;
k++;
while(A[k]<=m){
cnt++;
k++;
}
cout<<cnt<<endl;
}
}
}
cout >> n >> " " >> m;
手動算一下
就知道盲點在哪裡。
這題題目沒講清楚
輸入的資料範圍為 1 ≤ n, m ≤ 1,000,000,000,000,000,000
輸出區間 [n, m] 內,屬於數列中的數值個數
(也就是必須要大於等於 n 且 小於等於 m)
這題題目沒講清楚
輸入的資料範圍為 1 ≤ n, m ≤ 1,000,000,000,000,000,000
輸出區間 [n, m] 內,屬於數列中的數值個數
(也就是必須要大於等於 n 且 小於等於 m)
"大於等於 n 且 小於等於 m" 也都已考慮進去了
簡單來說
就是 n > m 時要輸出 0