1643 例 3 Fibonacci 前 n 項和

2022-05-08 01:54:11 字數 1473 閱讀 6245

時間限制: 1000 ms         記憶體限制: 524288 kb

sol:這題應該挺水的吧,就像個板子一樣

1 0 0

1 1 0   *  1 1 1        (第一位是到i的和,第二位是fi-1,第三位是fi-2),每次乘右邊這個矩陣就是轉移一次

1 1  0

/*

1 0 0

1 1 1

1 1 0

*/#include

using

namespace

std;

typedef

long

long

ll;inline ll read()

while

(isdigit(ch))

return (f)?(-s):(s);

}#define r(x) x=read()inline

void

write(ll x)

if(x<10

)

write(x/10

); putchar((x%10)+'0'

);

return;}

#define w(x) write(x),putchar(' ')

#define wl(x) write(x),putchar('\n')

intn;

ll mod;

ll power[

5][5],a[5][5],c[5][5

];ll ans[

5][5

];inline

void ad(ll &x,ll y)

intmain()

memmove(power,c,

sizeof

power);

}memset(c,

0,sizeof

c);

for(i=1;i<=3;i++) for(j=1;j<=3;j++) for(k=1;k<=3;k++)

memmove(a,c,

sizeof

a); n>>=1

; }

memset(c,

0,sizeof

c);

for(i=1;i<=1;i++) for(j=1;j<=3;j++) for(k=1;k<=3;k++)

memmove(ans,c,

sizeof

ans);

wl(ans[

1][1

]);

return0;

}/*input

5 1000

output

12hint

1 1 2 3 5 8

*/

view code

1643 線段覆蓋 3

時間限制 2 s 空間限制 256000 kb 題目等級 gold 在乙個數軸上有n條線段,現要選取其中k條線段使得這k條線段兩兩沒有重合部分 端點可以重合 問最大的k為多少。輸入描述 input description 輸入格式 輸入檔案的第1行為乙個正整數n,下面n行每行2個數字ai,bi,描述...

codevs 1643 線段覆蓋 3

資料大到nlogn沒法做。然而我做1的時候用的就是貪心演算法。所以無影響。並且到這個地步。基本上就是卡io操作了 輸入輸出 cin cout會比較慢 關閉流同步後能快一倍 再快就只能用scanf printf 或者手寫讀入函式 讀入優化技巧 includeusing namespace std de...

codevs 1643 線段覆蓋 3 貪心 快排

題目描述 description 在乙個數軸上有n條線段,現要選取其中k條線段使得這k條線段兩兩沒有重合部分 端點可以重合 問最大的k為多少。輸入描述 input description 輸入格式 輸入檔案的第1行為乙個正整數n,下面n行每行2個數字ai,bi,描述每條線段。輸出描述 output ...