#19603: 這樣寫會RE


fdhs109_31813 (username)

學校 : 桃園市私立復旦高級中學
編號 : 103932
來源 : [220.137.10.66]
最後登入時間 :
2024-07-15 22:26:14
a451. 10229 - Modular Fibonacci -- UVa10299 | From: [1.34.38.60] | 發表日期 : 2019-10-13 11:02

#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,x;
while(cin>>n>>x)
{
if(n>0)
{
long long int a=pow(2,x);
long long int fn[n];
fn[0]=1;
fn[1]=1;
for(int i=2;i<n;i++)
fn[i]=fn[i-1]+fn[i-2] ;
cout<<fn[n-1]%a<<endl;
}
}
}

請教一下

 

 
#19605: Re:這樣寫會RE


314159265358979323846264338327 ... (少年π)

學校 : 臺北市私立延平高級中學
編號 : 69058
來源 : [223.136.179.30]
最後登入時間 :
2024-04-29 19:11:35
a451. 10229 - Modular Fibonacci -- UVa10299 | From: [223.140.118.246] | 發表日期 : 2019-10-13 11:08

 

#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,x;
while(cin>>n>>x)
{
if(n>0)
{
long long int a=pow(2,x);
long long int fn[n];
fn[0]=1;
fn[1]=1;
for(int i=2;i<n;i++)
fn[i]=fn[i-1]+fn[i-2] ;
cout<<fn[n-1]%a<<endl;
}
}
}

請教一下

 

n最大可能到2147483647,宣告這麼大的陣列會RE(而且就算不RE還是會TLE)

這題應該是矩陣快速冪(不會的話去查一下)

 

 
#19608: Re:這樣寫會RE


fdhs109_31813 (username)

學校 : 桃園市私立復旦高級中學
編號 : 103932
來源 : [220.137.10.66]
最後登入時間 :
2024-07-15 22:26:14
a451. 10229 - Modular Fibonacci -- UVa10299 | From: [1.34.38.60] | 發表日期 : 2019-10-13 14:39

 

#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,x;
while(cin>>n>>x)
{
if(n>0)
{
long long int a=pow(2,x);
long long int fn[n];
fn[0]=1;
fn[1]=1;
for(int i=2;i<n;i++)
fn[i]=fn[i-1]+fn[i-2] ;
cout<<fn[n-1]%a<<endl;
}
}
}

請教一下

 

n最大可能到2147483647,宣告這麼大的陣列會RE(而且就算不RE還是會TLE)

這題應該是矩陣快速冪(不會的話去查一下)

 我知道了,不果目前能力不足,查了也看不懂,等我能力提升以後再回來解這題好了。




 
ZeroJudge Forum