ACM 打靶問題

2021-08-25 08:50:06 字數 719 閱讀 2043

怎麼查?

s[j].lower_bound(mp(x,0))

查詢靶子中x座標大於等於給定的x的點

如果打在了圓心的左邊ok,這沒問題

所以這樣夠了嗎,不夠,還有可能打在圓心的右邊啊,這時候迭代器指向什麼呢?

沒錯,本組的疑似圓的下乙個,那我們把迭代器後退一次,再次判斷一下,這個問題就完美解決了

#include 

using

namespace

std;

#define ll long long

#define maxlog 30

#define mp(a,b) make_pair(a,b)

setint,int> >s[40];

setint,int> >::iterator it;

struct pointp[202000];

bool check(ll x,ll y)

return

false;

}void solve(ll x,ll y)

//如果不成功就找前乙個

if(it!=s[j].begin()) }}

puts("-1");

}inline ll read()

int main()}}

else

if(t==2)

}return

0;}

藍橋杯 打靶

打靶 小明參加x星球的打靶比賽。比賽使用電子感應計分系統。其中有一局,小明得了96分。這局小明共打了6發子彈,沒有脫靶。但望遠鏡看過去,只有3個彈孔。顯然,有些子彈準確地穿過了前邊的彈孔。不同環數得分是這樣設定的 1,2,3,5,10,20,25,50 那麼小明的6發子彈得分都是多少呢?有哪些可能情...

遞迴演算法(打靶)

解析 靶上一共有10種可能 1環到10環,還有可能脫靶,那就是0環,加在一起共11種可能。這是一道考迴圈和遞迴的面試題。我們在這個程式中將利用遞迴的辦法實現打靶所有可能的演示,並計算出結果。可以連續用10個迴圈語句來表示程式 for i1 0 i1 10 i1 注意2個條件 1 如果出現這種情況,即...

面試經典(12) 射擊打靶問題

題目描述 乙個射擊運動員打靶,靶一共有10環,連開10 槍打中90環的可能的組合有多少種?思路分析 每一槍的可能性都有11種,1 10靶或者脫靶,要遍歷出每種可能。假設solve n,sum 代表射擊n槍,打中sum環的所有組合的可能。第一槍有11可能,假如第一槍打中i環,那麼接下來只要計算solv...