原创 D. Beautiful Sequence for Round 604 Div2 in Codeforces

題意 原題傳送門 題目要求你將a個0,b個1,c個2和d個3排列成一個序列,使得相鄰元素的差爲1。其中0<=a+b+c+d<=1e5 題意分析 從數據量分析我們能夠否定掉暴力的方法。必須觀察題設條件總結出規律,然後根據規律設計一種guid

原创 CodeForces Optimal Subsequences (Hard Version)

題目鏈接:傳送門 題意簡述  這道題有兩個版本,簡單版本只需要簡單的模擬就可以了。困難版則是將數據量加大到2E5的級別。所以需要提高代碼的執行效率才能通過。 題目給定一個長度爲N的序列,目的是求出符合以下要求的子序列: 長度爲K 子序列元

原创 Codeforces Round #478 (Div. 2) D. Ghosts

傳送門 題意 在一個平面宇宙有很多的靈魂在以固定速度遊蕩,如果兩個靈魂相遇會互相恐嚇對方,相對應的兩個靈魂各自增加一點經驗值。每個靈魂經驗值初始爲零。給定每個靈魂初始的x座標,y座標滿足y=ax+b。然後給出x方向的速度和y方向的速度。

原创 UVA 1600 Patrol Robot (bfs)

題意 巡邏機器人從起點(1,1)到終點(m,n)。求最短路徑長度,其中機器人可以連續穿過不超過k個障礙物。 解題思路 首先要明白穿過障礙物並不代表一定要直線飛過,可以各種拐彎飛,只要不超過k個就行。求最短路自然想到了bfs,和普通的bfs

原创 全排列相關總結

前言    今天做LeetCode裏面的關於全排列的題目:31. Next Permutation發現自己對全排列是完全不瞭解。所以狠搜一波。總結一些知識點。(PS:該總結中待排列元素假定爲整型數字。由於個人習慣,right通常指左邊的元

原创 UVA - 12166 Equilibrium Mobile 修改天平

UVA - 12166 Equilibrium Mobile 修改天平 傳送門 題意 給一個深度不超過16的二叉樹,代表一個天平。每根天平都懸掛在中間,每個秤砣的重量已知。至少修改多少個秤砣的重量才能讓天平平衡? 分析     首先所

原创 鏈表

鏈表    鏈表是一個線性順序結構,鏈表爲動態集合提供了一種簡單而靈活的表示方法,但由於指針的存在,在代碼的書寫過程中很容易出bug。不管是利用其他技巧模擬指針還是語言自帶的指針都很容易出錯。    下面給出鏈表的基本操作代碼:の鏈表的結

原创 UVA - 11853-Paintball 求出口入口方法正確性分析

題目鏈接 題意 如果大家是從lrj的書中例題看到本題,相信對題意不會太陌生,所以就不重複說了 解題思路 書中lrj也講了思路,代碼也可以下載,這篇博客就是說明一下爲什麼入口和出口的求法的正確性。 從圖片中可以看到樣例有解。建議大家先

原创 棧和隊列

棧(stack)和隊列(queue)都是動態集合,且在其上能進行delete操作所移除的元素是預先設定的。在棧中刪除的是最近插入的元素;在隊列中則是存在最久的元素。這兩者實現的分別是後進先出(last in, first out)和先進先

原创 UVA - 12657 Boxes in a Line 雙向鏈表

Boxes in a Line    You have n boxes in a line on the table numbered 1 . . . n from left to right. Your task is to simul

原创 B. Igor and his way to work

題目鏈接 題意 就是給你一個1000 * 1000以內的迷宮,只能轉彎兩次是否能夠從起點到終點。 解題思路 題意還是十分清晰的。以前沒做過轉彎的題目,所以花了比較久的時間。題目不能。在原來bfs的基礎上修改判斷 重複遍歷的條件。改爲轉彎

原创 歸併排序和逆序對

歸併排序 歸併排序步驟的劃分 - 劃分問題:把序列分成元素個數儘量相等的兩半 - 遞歸求解:把兩邊的元素分別排序 - 合併問題:把兩半的有序表合併成一個 從第三步描述可以知道當執行到第三步的時候兩邊的元素已經局部有序了。接下來要做

原创 二分搜索相關及循環有序序列相關

前言:        今天做題的時候看到一道題:33. Search in Rotated Sorted Array。由於LeetCode題目不給範圍和時間。然我們儘量想複雜度小的方法。所以首先便把順序便歷排除。可是接下來就陷入了僵局。因

原创 hdu 5831 Rikka with Parenthesis II

題目鏈接 題意 給你一系列的有‘(’、‘)’組成的字符串,其中的數據量不大,問經過一次交換其中兩個字符的位置能否使所有的括號都能符合題意給出的規範(也就是配對). 解題思路 可以用堆棧來模擬括號配對。當所有的括號都壓棧或彈出後檢查棧中剩下

原创 Uva 804 Spatial Structures

鏈接 題意 給一張圖的兩種表示方法,讓你互相轉化。然後輸出,題意太長,就不翻譯了。 解題思路 圖轉樹: 利用遞歸的寫法很容易想出遞歸的方案,就是先遞歸整張地圖,可以將左上角加長度的一半作爲參數遞歸。這樣可以在遞歸的時候將整張圖分成四塊分別