关注
顺便附上第三题代码,我感觉思路和答案都是对的啊,看看有没有大佬指导一下
(每次二分查找之后其实可以更新left的,但是懒得优化)
int binarySearch(int n, const vector<int>& mosters)
{
int l = -1;
int r = mosters.size();
while (l + 1< r)
{
int m = (r - l) / 2 + l;
if (mosters[m] < n)
{
l = m;
}
else
{
r = m;
}
}
return l;
}
int main() {
int p, n, m;
cin >> p >> n >> m;
vector<int> mosters(n);
vector<bool> killed(n, 0);
vector<int> bosses(m);
for (int i = 0; i < n; i++)
{
cin >> mosters[i];
}
for (int i = 0; i < m; i++)
{
cin >> bosses[i];
}
for (auto boss : bosses)
{
int curP = p;
int left = -1;
int right = mosters.size();
int time = 0;
while (curP <= boss)
{
time++;
int mosterId = binarySearch(curP, mosters);
while (mosterId != -1 && killed[mosterId])
{
mosterId--;
}
if (mosterId <= -1 || mosters[mosterId] < 0.1 * curP) // 都打不过或者不如 * 1.1
{
curP *= 1.1;
}
else
{
curP += mosters[mosterId];
killed[mosterId] = true;
}
cout << time << " " << curP << endl;
}
cout << time << endl;
}
}
查看原帖
点赞 1
相关推荐
12-09 17:30
Java 点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 找工作能把i人逼成什么样 #
13576次浏览 166人参与
# 上班到公司第一件事做什么? #
108692次浏览 731人参与
# 你今年做了几份实习? #
8959次浏览 138人参与
# 工作两年想退休了 #
202642次浏览 1790人参与
# 你开始找寒假实习了吗? #
15042次浏览 208人参与
# 0经验如何找实习? #
25809次浏览 441人参与
# 面试尴尬现场 #
204618次浏览 819人参与
# 大厂面试初体验 #
83311次浏览 382人参与
# 大学最后一个寒假,我想…… #
71900次浏览 723人参与
# 大家每天通勤多久? #
64240次浏览 413人参与
# 金融财经春招备战日记 #
43759次浏览 216人参与
# 你找工作经历过哪些骗局? #
9237次浏览 140人参与
# 央国企投递记录 #
165909次浏览 1622人参与
# 产品人求职现状 #
297936次浏览 2360人参与
# 阿里云工作体验 #
36827次浏览 119人参与
# 字节出了豆包coding模型 #
6790次浏览 60人参与
# 机械人值得去的半导体企业 #
32906次浏览 183人参与
# 一起聊华为 #
168111次浏览 819人参与
# 25年找工作是什么难度? #
15462次浏览 153人参与
# 新凯来求职进展汇总 #
63951次浏览 170人参与
