1. 程式人生 > >【洛谷】P1011 車站 (暴力)

【洛谷】P1011 車站 (暴力)

題目連結

題目描述

火車從始發站(稱為第 1 站)開出,在始發站上車的人數為 a ,然後到達第 2 站,在第 2 站有人上、下車,但上、下車的人數相同,因此在第 2 站開出時(即在到達第 3 站之前)車上的人數保持為 a 人。從第 3 站起(包括第 3 站)上、下車的人數有一定規律:上車的人數都是前兩站上車人數之和,而下車人數等於上一站上車人數,一直到終點站的前一站(第 n-1 站),都滿足此規律。現給出的條件是:共有 N 個車站,始發站上車的人數為 a ,最後一站下車的人數是 m (全部下車)。試問 xx 站開出時車上的人數是多少?

輸入輸出格式

輸入格式:

a (≤20), n (≤20), m (≤2000),和 x (≤20),

輸出格式:

從 x 站開出時車上的人數。

輸入輸出樣例

輸入樣例#1: 複製

5 7 32 4

輸出樣例#1: 複製

13

暴力列舉第二個車站上車的人數即可。試了一下二分,但水有點深,不好二分(╬ ̄皿 ̄)

注意第二個車站的上車人數可以是0;

AC程式碼:

#include<iostream>
#include<sstream>
#include<algorithm>
#include<string>
#include<iomanip>
#include<vector>
#include<cmath>
#include<stack>
using namespace std;
int main()
{
    int up[21],down[21],bus[21];
    //up[i]表示第i個車站上車人數,down[i]表示第i個車站下車人數,bus[i]表示離開第i個車站時車上總人數 
    int a,n,m,x;
    cin>>a>>n>>m>>x;
    
    bus[1]=bus[2]=a;
    up[1]=a;down[1]=0;
    for(int num=0;;num++)
    {
        up[2]=num;down[2]=num;
        for(int i=3;i<n;i++)
        {
            up[i]=up[i-1]+up[i-2];
            down[i]=up[i-1];
            bus[i]=bus[i-1]+up[i]-down[i];
        }
        bus[n]=0;
        if(bus[n-1]==m) 
        {
            cout<<bus[x];
            break;
        }
    }
}

相關推薦

P1011 車站 暴力

題目連結 題目描述 火車從始發站(稱為第 1 站)開出,在始發站上車的人數為 a ,然後到達第 2 站,在第 2 站有人上、下車,但上、下車的人數相同,因此在第 2 站開出時(即在到達第 3 站之前)車上的人數保持為 a 人。從第 3 站起(包括第 3 站)上、下車的人數

P2434 [SDOI2005]區間暴力

輸入輸出 pre spa scan break 輸入格式 我們 return 描述 題目描述 現給定n個閉區間[ai, bi],1<=i<=n。這些區間的並可以表示為一些不相交的閉區間的並。你的任務就是在這些表示方式中找出包含最少區間的方案。你的輸出應該按照區

2822 組合數問題遞推

return bottom 初始化 list main sca set 如果 lld 題目描述 組合數C?n?m??表示的是從n個物品中選出m個物品的方案數。舉個例子,從(1,2,3) 三個物品中選擇兩個物品可以有(1,2),(1,3),(2,3)這三種選擇方法。根據組合

P1052 過河狀壓dp

ron mic ont 由於 不同 amp 整數 輸入輸出格式 pac 題目描述 在河上有一座獨木橋,一只青蛙想沿著獨木橋從河的一側跳到另一側。在橋上有一些石子,青蛙很討厭踩在這些石子上。由於橋的長度和青蛙一次跳過的距離都是正整數,我們可以把獨木橋上青蛙可能到達的點看成數

P2983 [USACO10FEB]購買巧克力Chocolate Buying貪心

輸出格式 準備 anti radius rod money pri price -s 題目描述 Bessie and the herd love chocolate so Farmer John is buying them some. The Bovine Choco

P2725 郵票 Stampsdp

adg symbol 能夠 循環 tro 總數 技術分享 std 答案 題目背景 給一組 N 枚郵票的面值集合(如,{1 分,3 分})和一個上限 K —— 表示信封上能夠貼 K 張郵票。計算從 1 到 M 的最大連續可貼出的郵資。 題目描述

複習---p2820區域網--//最小生成樹 2

題目背景某個區域網內有n(n<=100)臺計算機,由於搭建區域網時工作人員的疏忽,現在區域網內的連線形成了迴路,我們知道如果區域網形成迴路那麼資料將不停的在迴路內傳輸,造成網路卡的現象。因為連線計算機的網線本身不同,所以有一些連線不是很暢通,我們用f(i,j)表示i,j之間連線的暢通程度,f(i,j)值

題解P2375 [NOI2014] 動物園KMP

洛谷P2375:https://www.luogu.org/problemnew/show/P2375 思路 這道題可以說是完全重新整理了本蒟蒻對KMP的理解 感覺對next陣列的理解上升到一個新的高度 首先題目給出了next陣列的定義 關於整個字串 next[len]為字首與字尾相同的最

P1019 單詞接龍-預處理+dfs

題目描述 單詞接龍是一個與我們經常玩的成語接龍相類似的遊戲,現在我們已知一組單詞,且給定一個開頭的字母,要求出以這個字母開頭的最長的“龍”(每個單詞都最多在“龍”中出現兩次),在兩個單詞相連時,其重合部分合為一部分,例如 beastbeast和astonishastonish,如果接成

P5015 標題統計java

題目描述 凱凱剛寫了一篇美妙的作文,請問這篇作文的標題中有多少個字元? 注意:標題中可能包含大、小寫英文字母、數字字元、空格和換行符。統計標題字 符數時,空格和換行符不計算在內。 輸入輸出格式 輸入格式:   輸入檔案只有一行,一個字串 ss。  

第一題數字統計P1179

題目大意 給兩個整數L,R(1<=L,R<=1000000),求出數字2在此區間出現過幾次 分析 資料不大,模擬AC #include<bits/stdc++.h> using namespace std; int main() { i

第二題接水問題 P1190

題目描述 學校裡有一個水房,水房裡一共裝有 m 個龍頭可供同學們開啟水,每個龍頭每秒鐘的供水量相等,均為 1。 現在有 n 名同學準備接水,他們的初始接水順序已經確定。將這些同學按接水順序從 1 到 n 編號,i號同學的接水量為 wi。接水開始時,1 到 m 號

第二題統計單詞數 P1308

題目描述 一般的文字編輯器都有查詢單詞的功能,該功能可以快速定位特定單詞在文章中的位置,有的還能統計出特定單詞在文章中出現的次數。 現在,請你程式設計實現這一功能,具體要求是:給定一個單詞,請你輸出它在給定的文章中出現的次數和第一次出現的位置。注意:匹配單詞時,

第四題表示式的值 P1310

題目描述 對於1 位二進位制變數定義兩種運算: 運算的優先順序是: 先計算括號內的,再計算括號外的。 “× ”運算優先於“⊕”運算,即計算表示式時,先計算× 運算,再計算⊕運算。例如:計算表示式A⊕B × C時,先計算 B × C,其結果再與 A 做⊕運算。

P3391 模板文藝平衡樹Splay

個數 mes 區間 翻轉 kth rand() 中序 clu span 文藝平衡樹的Fhq-Treap(無旋treap)做法 與普通平衡樹不同的是,這裏平衡樹需要維護的是一個序列,怎麽辦呢? 題解 平衡樹的性質:無論哪個操作都不會改變樹的中序遍歷 所以,對於一個序列平衡

P1012 拼數貪心

題目連結 題目描述 設有 n 個正整數 (n≤20)將它們聯接成一排,組成一個最大的多位整數。 例如: n=3 時, 3 個整數 13 , 312 , 343 聯接成的最大整數為: 34331213 又如: n=4 時, 4 個整數 7 , 13 , 44 , 246

3379 模板最近公共祖先LCA

題目傳送門 誒,自己真的是越來越菜了,自己寒假裡學會的LCA到現在已經忘得差不多了。 今天就當是複習一下吧。 其實這個倍增的思想還是挺神奇的,每次詢問時先把深度較大的節點倍增到和深度較小的節點同一深度。 然後再把這兩個節點同時倍增到離它們最遠的不相同的祖先出,賦值並迴圈,最

訓練場_貪心篇不全

ret aps 復雜度 常數 再次 for 除了 namespace 需要 筆者認為:貪心算法(greedy algorithm),指對事情的每一步都選擇最優解解決,因此常用做求最值問題。 P1090 合並果子 題意: 多多有n堆果子,每堆果子的數目可能不一樣(

P1030 求先序排列

++ std name spa n) clu find main subst 這是一道圖論模板題,用分治的策略即可輕松AC! #include<bits/stdc++.h> using namespace std; string st1,st2,s1,s2;

P3367 模板並查集

space ret class cpp else if 並查集 scan == namespace #include<bits/stdc++.h> using namespace std; int fa[10005],n,m,type,a,b; int fa