Tsinsen A1117 火车过站

来源:互联网 发布:mac上关掉软件 编辑:程序博客网 时间:2024/06/10 07:24

http://oj.tsinsen.com/A1117###

分析:一个数学题,设第二站上车人数为in,然后再随便推一推就推出公式了,下面代码还有可以优化(缩短)的空间

代码:

#include "bits/stdc++.h"using namespace std;int FibA[30] = { 1, 0, 1, 0 };int FibI[30] = { 0, 0, 0, 1 };int main() {    for (int i = 4; i < 30; ++i)        FibI[i - 1] = FibA[i] = FibA[i - 2] + FibA[i - 1];    int a, n, m, x, in;    scanf("%d%d%d%d", &a, &n, &m, &x);    int u = 0, v = 0;    for (int i = 0; i < n - 1; ++i) {        u += FibA[i]; v += FibI[i];    }    in = (m - u * a) / v;    u = v = 0;    for (int i = 0; i < x; ++i) {        u += FibA[i]; v += FibI[i];    }    printf("%d\n", u * a + v * in);    return 0;}
0 0
原创粉丝点击