清華大學機試 剩下的樹 Easy 貪心的區間思想

2022-06-24 18:09:13 字數 839 閱讀 4826

基本思想:

自己想到了貪心區間裡面進行區間排序的思想;

但是還有一種更簡單的,直接進行構建乙個標記陣列,然後按個數進行標記即可;

關鍵點:

注意區間包含問題;

#include#include

#include

#include

#include

#include

using

namespace

std;

struct

node ;

intn, m;

vector

vec;

vector

res;

bool

cmp(node a, node b)

intmain()

sort(vec.begin(), vec.end(), cmp);

int s = vec[0

].st;

int e = vec[0

].ed;

for (int i = 1; i < vec.size(); i++)

else

if(vec[i].st>e)

}//裝入最後的節點;

no.st =s;

no.ed =e;

res.push_back(no);

//進行資料列舉遍歷;

int cnt = 0

;

for (int i = 0; i < res.size(); i++)

cout

<< n+1 - cnt <}

return0;

}

清華大學2023年機試 遞推數列 1081

題目描述 給定a0,a1,以及an p a n 1 q a n 2 中的p,q。這裡n 2。求第k個數對10000的模。輸入 輸入包括5個整數 a0 a1 p q k。輸出 第k個數a k 對10000的模。樣例輸入 20 1 1 14 5 樣例輸出 8359 解題思路 首先,第一反應是用遞迴解題,...

清華大學2023年機試 進製轉換 1080

題目描述 將m進製的數x轉換為n進製的數輸出。輸入 輸入的第一行包括兩個整數 m和n 2 m,n 36 下面的一行輸入乙個數x,x是m進製的數,現在要求你將m進製的數x轉換成n進製的數輸出。輸出 輸出x的n進製表示的數。樣例輸入 16 10 f樣例輸出 15解題思路 就是進製轉換,但是需要注意的是資...

牛客網 清華大學 剩下的樹 解題報告

有乙個長度為整數l 1 l 10000 的馬路,可以想象成數軸上長度為l的乙個線段,起點是座標原點,在每個整數座標點有一棵樹,即在0,1,2,l共l 1個位置上有l 1棵樹。現在要移走一些樹,移走的樹的區間用一對數字表示,如 100 200表示移走從100到200之間 包括端點 所有的樹。可能有m ...