ICode9

精准搜索请尝试: 精确搜索
  • Luogu - P4053 [JSOI2007]建筑抢修2021-12-18 15:03:12

    #include<bits/stdc++.h>using namespace std;const int N = 2e5 + 10;int n;struct build{    int t1, t2;}a[N];int now, ans;priority_queue<int> Q;bool cmp(build a, build b){    return a.t2 < b.t2;}int main(){    cin >> n;    for(int i = 1;

  • P4053 [JSOI2007]建筑抢修2021-10-26 11:01:46

    首先按照结束时间排序,显然结束早的要去做。能做就做,如果做不了,就在前面找一个耗时最大的,把最大的扔掉,换成当前的,如果最大的也比当前的小,那么显然当前的是做不了的,不用管了. struct inter { int r, len; bool operator <(const inter&rhs)const { return r < rhs.r; } } t[N];

  • 洛谷 P4053 [JSOI2007]建筑抢修2020-02-27 13:00:21

    题目描述 小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者。但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建筑设施将会完全毁坏。现在的情况是:T部落基地里只有一个修理工人,虽然他能瞬间到达

  • 洛谷 P4053 [JSOI2007]建筑抢修2019-10-03 20:52:07

    洛谷 P4053 [JSOI2007]建筑抢修 Description 小刚在玩JSOI提供的一个称之为“建筑抢修”的电脑游戏:经过了一场激烈的战斗,T部落消灭了所有z部落的入侵者。但是T部落的基地里已经有N个建筑设施受到了严重的损伤,如果不尽快修复的话,这些建筑设施将会完全毁坏。现在的情况是:T部落基地

  • P4053 [JSOI2007]建筑抢修2019-08-30 09:01:13

    传送门 看题目就想到 $dp$,想不出来就去想贪心... 考虑按右端点排序,一个个修,如果在修某个建筑 $i$ 时发现来不及了,说明前 $i$ 个建筑最多只能修 $i-1$ 个 那么我们把前 $i$ 个中耗时最长的那个放弃,这样省下的时间最多 然后用优先队列维护一下就行 #include<iostream>#include<cstd

  • P4053 [JSOI2007]建筑抢修 堆贪心2019-07-22 17:51:29

    思路:堆贪心 提交:1次 题解: 先按时间\(sort\),然后如果能修就直接扔堆里,不能修取堆顶比一下时间长短,把时间短的扔进堆; #include<cstdio> #include<iostream> #include<queue> #include<algorithm> #define ull unsigned long long #define ll long long #define R register int using

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有