#14696: 請幫忙看哪裡錯了 謝謝


fionahung0908 (username)

學校 : 臺北市私立延平高級中學
編號 : 69055
來源 : [180.217.99.153]
最後登入時間 :
2020-10-19 15:02:55
d580. 末日預言 -- raincole | From: [203.72.178.252] | 發表日期 : 2018-07-31 14:39

#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
long long int n,j,i;
while(cin>>n)
{
j=0;
int f[n];
for(i=0;i<=n;i++)
{
if(i==0||i==1) f[i]=1;
else f[i]=f[i-2]+f[i-1];
}
j=f[i]%2012;
cout<<j<<endl;
}
return 0;
}

 
#14700: Re:請幫忙看哪裡錯了 謝謝


inversion (「我們所認識的可符香是個像天使的好女孩」之葉林 *Cries...)

學校 : 國立清華大學
編號 : 43537
來源 : [49.159.6.107]
最後登入時間 :
2022-05-28 19:29:12
d580. 末日預言 -- raincole | From: [49.158.83.43] | 發表日期 : 2018-07-31 19:54

#include
#include
#include
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
long long int n,j,i;
while(cin>>n)
{
j=0;
int f[n];
for(i=0;i<=n;i++)
{
if(i==0||i==1) f[i]=1;
else f[i]=f[i-2]+f[i-1];
}
j=f[i]%2012;
cout<<j<<endl;
}
return 0;
}

你在建表的時候就已經溢位了喔( f[i] = f[i - 2] + f[i - 1] 那一行)。

費式數列的第80項就已經是23416728348467685這麼大了。

所以靈活地要運用餘數的性質喔。

不能建完才取餘數。

 
ZeroJudge Forum