AHOI2004 數字迷陣

2022-03-25 18:28:03 字數 1066 閱讀 8428

瞪眼觀察題。發現行列都跟斐波那契數列有關。

如果能求出第一列就好了。

發現第一列的數都是由若干個$2$和若干$3$的和加$1$。

發現第$fib[i]$行有$fib[i-2]$個3和$fib[i-3]$個2。

其他行呢?

將行號拆分成若干項斐波那契數列的和,發現對應的$3$、$2$的數目也是對應的和。

然後萬事大吉了。

距離$ac$還只需要會矩陣快速冪。

感性理解**。

1 #include 2

3using

namespace

std;45

#define re register

6#define rep(i, a, b) for (re int i = a; i <= b; ++i)

7#define repd(i, a, b) for (re int i = a; i >= b; --i)

8#define for(i, a, b, s) for (re int i = a; i <= b; s)

9#define maxx(a, b) a = max(a, b)

10#define minn(a, b) a = min(a, b)

11#define ll long long

12#define inf (1 << 30)

1314 inline int

read()

2021

const

int max = 1000000000;22

23struct

matrix f, g;

2829

int fib[100

], x, y, p;

30int

a, b;

3132 matrix operator *(matrix a, matrix b)

4041

intmain()

59 printf("

%d", (f.b * a + f.a * b) %p);60}

61return0;

62 }

AHOI2004 數字迷陣題解

輸入輸出樣例 解決方案 傳送門 每行有三個正整數,分別是i,j,m,其中i,j 10 9,2 m 10 4。每行輸出對應的第i行,第j列的那個正整數對m取模的結果。1 2 99 9 1 999 首先我們可以判斷出每行都是變形的斐波那契數列,又因為a i 2 2a i 1 i 1 所以本質上a i j...

DP 探索數字迷塔

晶晶最近迷上了數字迷宮遊戲,整天沉浸在一串串看似簡單的數字中自得其樂。數字迷宮遊戲的魅力體現在變化中隱含著不變的規律,歸納是 數字迷宮的法寶之一。圖10.1 1就是乙個由線連線起來的數字小方格組成的數字迷塔。這個迷塔共n層,它由n n 1 2個小方格組成。每個小方格中都有乙個數字,並且連著下一層的兩...

數字迷宮小遊戲

本案例為實現動態的重新整理dos 介面,使用使用者控制頭像 消滅 視窗中出現的數字 無固定順序 的遊戲,來使學員加深對一維陣列 二維陣列 迴圈語句 選擇程式設計以及相關系統函式的使用。a 選擇程式設計 b 迴圈程式設計 c 使用者 螢幕視窗的輸入輸出 d 相關系統函式 e 一維 二維陣列 4天c語言...