我有一個邊長爲1的正方形。現在,在每秒之後,每邊L的每個正方形將分裂成每邊L/2的四個正方形。尋找一個遞歸修改的正方形的周長
我所需要的計算所得到的圖中,其中總周長被定義爲在所得到的圖中的所有線段的長度之和的總周長。例如,左側圖像的總周長爲4L
,而右側的圖像總長爲6L
-4L
,內部線段爲2L
。
我的代碼:
#include <cmath>
#include <cstdio>
#include <vector>
#include <iostream>
#include <algorithm>
using namespace std;
#define mod 1000000007
int main() {
int s;
cin>>s;
long long int ans=4;
for(int i=1;i<=s;i++)
ans+=1<<i;
ans=ans%mod;
cout<<ans<<endl;
return 0;
}
因爲最終的答案可能無法在64位有符號整數合身,我需要計算的答案模1000000007
。
例如0秒後,長度爲4。第二 後如圖1所示,長度爲6。 我沒有得到正確的輸出。 PLease幫助
@MikeSeymour因爲長度爲1,和我initally採取ANS = 4 – user4115692 2014-10-07 05:01:10
顯示一個例子你所期望的要顯示,如果該程序是正確的。 – 2014-10-07 05:02:04
@PreetSangha我用這種方法得到錯誤的答案,我正在請求我犯的錯誤 – user4115692 2014-10-07 05:03:25