團體程式設計天梯賽 L3 009 長城 30分

2021-10-02 10:45:54 字數 843 閱讀 2976

l3-009 長城 (30分)

思路:既然所組建的瞭望台可以看見所有地方,我們不妨化簡一下題意:

組建的瞭望台可以看見所有的點—>對於每個點我們找到它南方的瞭望台

做法就是對於每乙個點我們遍歷它南方的點,找到必須成為瞭望台的那個點,將那個點設定為瞭望台;

假設當前點為a,它的南方有相鄰的兩點b、c,此時b必須成為瞭望台的條件是ab⃗

×ac⃗

<

0\vec \times \vec < 0

ab×a

c<

0**:

#include

using

namespace std;

inline

intread()

while

(c >=

'0'&& c <=

'9') x = x *

10+ c -

'0', c =

getchar()

;return x * f;

}typedef

long

long ll;

const

int maxn =

1e5+5;

int n, s[maxn]

, t;

ll x[maxn]

, y[maxn]

;inline

bool

check

(int a,

int b,

int c)

intmain()

cout << st.

size()

;return0;

}

團體程式設計天梯賽 L3 009 長城 30分

l3 009 長城 30分 思路 既然所組建的瞭望台可以看見所有地方,我們不妨化簡一下題意 組建的瞭望台可以看見所有的點 對於每個點我們找到它南方的瞭望台 做法就是對於每乙個點我們遍歷它南方的點,找到必須成為瞭望台的那個點,將那個點設定為瞭望台 假設當前點為a,它的南方有相鄰的兩點b c,此時b必須...

團體程式設計天梯賽 L1 011 L1 015

l1 011 思路 用map存不需要輸出的字元 pragma gcc optimize 2 include using namespace std string s map char bool mp intmain l1 012 思路 1 pragma gcc optimize 2 include ...

團體程式設計天梯賽 L1 056 L1 060

l1 056 思路 這裡算出來相減排個序即可 include using namespace std typedef pair int,string p intmain ans int 1.0 ans n 2 cout ans for p p v p.first abs p.first ans so...