斐波那契数列
题目描述
火车从始发站(称为第1站)开出,在始发站上车的人数为a,然后到达第2站,在第2站有人上、下车,但上、下车的人数相同,因此在第2站开出时(即在到达第3站之前)车上的人数保持为a人。从第3站起(包括第3站)上、下车的人数有一定规律:上车的人数都是前两站上车人数之和,而下车人数等于上一站上车人数,一直到终点站的前一站(第(n−1)站),都满足此规律。现给出的条件是:共有n个车站,始发站上车的人数为a,最后一站下车的人数是m(全部下车)。试问x站开出时车上的人数是多少?
对于全部的测试点,保证1≤ a ≤20,1≤ x ≤n ≤20,1 ≤ m ≤ 2×104。
输入格式
输入只有一行四个整数,分别表示始发站上车人数 a ,车站数 n ,终点站下车人数 m 和所求的站点编号 x 。
5 7 32 4
输出格式
输出一行一个整数表示答案:从 x 站开出时车上的人数。
整体思路
我们不妨先来列一个表格,a 代表始发站人数,t 代表第二站上车人数。
上车人数 | 下车人数 | 车上增加人数 | 出站时人数 | |
---|---|---|---|---|
1 | a | \ | a | a |
2 | t | t | 0 | a |
3 | 1a+1t | 0a+1t | 1a+0t | 2a |
4 | 1a+2t | 1a+1t | 0a+1t | 2a+t |
5 | 2a+3t | 1a+2t | 1a+1t | 3a+2t |
6 | 3a+5t | 2a+3t | 1a+2t | 4a+4t |
7 | 5a+8t | 3a+5t | 2a+3t | 6a+7t |
8 | 8a+13t | 5a+8t | 3a+5t | 9a&# |