day1:

8:20分还不知道考场在哪给ccf差评

8:30开始看题

第一题感觉是个模拟啊 很烦

瞄了一眼第二题第三题题意挺简单的啊感觉还不错

然后开始仔细看t1

然后我发现好像可以退狮子 应该是个数学题

推了半个小时的式子 我发现这个就是(a1+a2...+an)/1+(循环和x1x2)/2+...

然后以为自己很机智的开始dp了

发现是个背包

可以cdq分治一下 就是n^2logn

然后花了2:30 搞完了t1

出考场后立马觉得我是个傻逼

出成绩后就觉得更加傻逼了

然后看t3

前10分暴力dfs

20pits暴力+判重吧

然后我觉得可能还有几分可以搞

打了表看了一下还有5分是2^n

在后面的规律我好像不太看得出来 就弃疗了

(事实证明还是正确的然而并没什么用)

开始看t2

啊送50分么??

我仔细算了一波?? 这是卡n^2logn的节奏啊

lca可以O(1)??

想了一下就否定了。。(啊啊啊我怎么没学过离线o(1)啊)

然后想了半个小时

发现可以f[x][y]记录一下

以为做出来了

发现空间又炸了

然后我机智(傻逼)的发现可以只记录一半

然后开始码 码了半个小时 发现空间依旧会炸

离考试结束还有半个小时

我去 坑啊 后面链显然可以搞的分我还没想啊 哎

以防爆0 我决定写稳一点的倍增lca

然后10分钟写完通过样例找了两个错就过了大样例

出考场就发现凉了

day1t1 那个傻逼dp人人都会啊 推什么傻逼dp式子啊

还有背包可以直接还原啊 你还多一支log

day1t2 你不会O(1)你写树剖照样跑的飞快啊??

dayt3 也没什么好说的 反正我水平也就这么点了

说好的3点出成绩

4点才出

t1果然炸了70,t2 30,t3 25

然后我听说t1 cdq能过??

进去看了一番代码

我日 我把l=l+1 写成 mid=l+1 这不是炸成暴力么???

感觉100 45 25人人都会

day2:

宾馆里呆了一天,集训队答辩估计我也听不懂就不去了

晚上莫名开始做noi2017d1t1

压位+线段树我会啊。。

我想试下裸的能拿多少分

写完发现提交上去莫名wa

原来我有个特判导致范围少了1-2 所以要把最大范围+2

然后发现 我就卡在了56

看了一波别人发现有人裸的线段树70啊。。

发现有两个点被卡空间,两个点被卡时间(还有的点可能不是给裸线段树拿的)

和室友讨论了一波并不是很理解。。

就睡觉了

updata day3:仔细看了一下发现对于最后一层不用记录它的最小0/1位置啊

这种空间/2啊 。。。好简单好有用啊。。。

day3:

听说有题答本来挺开心的。。。然后 就因为这题凉了。。

t1巨水啊。。。

先看暴力 二分就下暴力判断

然后我害怕做不出来看了两档部分分

印象好像一档乱搞一档也是主席树吧

然后我想了一下正解发现是个傻逼题主席树

第一维按美味,第二维按价格排一下

半个小时写完今天感觉不错啊

一发过了2个小样例

哎呀a了a了

大样例一测 wtf??

wa了无数个点

有点方啊

肉眼看了3遍无果好吧我写对拍

30分钟写完对拍

拍拍拍 拍不出来啊

又拍拍拍 还是拍不出

啊拍出来了 我去我数据生成器生成了0

不符合题目要求

再改再拍。。。。。

到11:20 啊我拍出来了

搞出数据调调调 啊过了

再测大样例 我日??? 又wa 还是一片

又拍拍拍了20分钟

我去怎么还是这里错 ??? 再改终于过了大样例

啊已经11:40了

看t2 看了10分钟题目看不懂啊???

zhx路过,正好问了一波题目哦原来,是用来分割数字的啊

啊我好像会打20暴力啊??

啊我好像会打链啊???

然后想了一下好像很对啊开始打

这暴力有点难打啊?? 判断起来好麻烦啊

直接打链吧??

我日规则怎么可以加,的????

然后t2就这么爆零了

开题答

我日怎么只有一个小时多一点了啊啊??

看懂题目花了10分钟。。研究那个判断器花了10分钟。。

还有40分钟

我想了一下我好像不太会自己计算它花费时间。。。

就算会可能这点时间也码不出来了吧

爬山用不了了

那就手玩吧。。。

应该这种题最高分也就40吧(事实就是这在扯淡)

手玩了20多分钟第1个点,啊233333333 a了啊???

开始玩第二个点,乱搞了一波拿了4分

然后 好像每个点都有送分啊

离结束还有15分钟

写了个程序随机了一波 然后发现还有10分钟

我随便挑了个点看看

发现随机的有3分啊???

我点开数据一看 我日这他妈不是链么

那dp随便搞啊???

然后 考试就结束了

开始意识到后面的点可能就是傻逼

出来交流了一下发现t3各种爬山最少的也有40。。

凉了凉了

最后70 30 25 100 0 27=252

可能比ag低10-20左右吧

其实拿满很可能就有au吧

100 45(+20)25 100 0 50(+10)

贴一下t1

#include <bits/stdc++.h>
using namespace std;
#define IL inline
#define rint register int
#define ll unsigned long long
const int N=2e5+1e4;
const int N2=1e5+100;
struct re{
int a,b,c;
}a[N];
int ph[N*20],pt[N*20],root[N],n,m;
ll pnum[N*20],pcost[N*20],g,l;
int cnt;
IL bool cmp(re x,re y)
{
return(x.a<y.a);
}
#define mid ((h+t)>>1)
void insert(rint last,rint &now,rint k,rint h,rint t)
{
now=++cnt;
if (h==t)
{
pcost[now]=a[k].b; pnum[now]=pnum[last]+a[k].c; return;
}
ph[now]=ph[last]; pt[now]=pt[last];
pcost[now]=pcost[last]+1ll*a[k].b*a[k].c;
pnum[now]=pnum[last]+a[k].c;
if (a[k].b<=mid) insert(ph[last],ph[now],k,h,mid);
else insert(pt[last],pt[now],k,mid+1,t);
}
bool query(rint last,rint now,rint h,rint t,ll g,ll l)
{
if (h==t)
{
if (l<=pnum[now]-pnum[last]&&l*pcost[now]<=g) return(1); else return(0);
}
ll tj=pnum[ph[now]]-pnum[ph[last]],hf;
if (mid!=h) hf=pcost[ph[now]]-pcost[ph[last]];
else hf=(pnum[ph[now]]-pnum[ph[last]])*pcost[ph[now]];
if (tj>=l)
return(query(ph[last],ph[now],h,mid,g,l));
else
{
if (g>=hf) return(query(pt[last],pt[now],mid+1,t,g-hf,l-tj));
else return(0);
}
}
IL bool check(rint x)
{
if (query(root[x-1],root[n],1,N2,g,l)) return(1);
else return(0);
}
int main()
{
freopen("juice.in","r",stdin);
freopen("juice.out","w",stdout);
ios::sync_with_stdio(false);
cin>>n>>m;
for (rint i=1;i<=n;i++) cin>>a[i].a>>a[i].b>>a[i].c;
sort(a+1,a+n+1,cmp);
for (rint i=1;i<=n;i++)
insert(root[i-1],root[i],i,1,N2);
for (rint i=1;i<=m;i++)
{
//ll g,l g rmb l sheng
cin>>g>>l;
rint h=1,t=n;
while (h<t)
{
rint mid2=(h+t+1)/2;
if (check(mid2)) h=mid2; else t=mid2-1;
}
if (h==1&&!check(1)) cout<<-1<<endl;
else cout<<a[h].a<<endl;
}
// cout<<cnt<<endl;
return 0;
}

ctsc2018的更多相关文章

  1. LOJ2557. 「CTSC2018」组合数问题

    LOJ2557. 「CTSC2018」组合数问题 这道题是我第一道自己做完的题答题.考场上面我只拿了41分,完全没有经验.现在才发现其实掌握了大概的思路还是不难. 首先模拟退火,通过了1,2,6,9, ...

  2. 【CTSC2018】暴力写挂(边分治,虚树)

    [CTSC2018]暴力写挂(边分治,虚树) 题面 UOJ BZOJ 洛谷 题解 发现第二棵树上的\(LCA\)的深度这玩意没法搞,那么枚举在第二棵树上的\(LCA\). 然后剩下的部分就是\(dep ...

  3. [CTSC2018]暴力写挂——边分树合并

    [CTSC2018]暴力写挂 题面不错 给定两棵树,两点“距离”定义为:二者深度相加,减去两棵树上的LCA的深度(深度指到根节点的距离) 求最大的距离. 解决多棵树的问题就是降维了. 经典的做法是边分 ...

  4. BZOJ5343[Ctsc2018]混合果汁——主席树+二分答案

    题目链接: CTSC2018混合果汁 显然如果美味度高的合法那么美味度低的一定合法,因为美味度低的可选方案包含美味度高的可选方案. 那么我们二分一个美味度作为答案然后考虑如何验证? 选择时显然要贪心的 ...

  5. loj#2552. 「CTSC2018」假面

    题目链接 loj#2552. 「CTSC2018」假面 题解 本题严谨的证明了我菜的本质 对于砍人的操作好做找龙哥就好了,blood很少,每次暴力维护一下 对于操作1 设\(a_i\)为第i个人存活的 ...

  6. CTSC2018&APIO2018游记

    CTSC2018&APIO2018游记 Day 0 傍晚出发,从长沙通往帝都的软卧哟. 然而长沙某中学坐高铁比我们晚出发还早到 Day 1 为了正经地写游记我决定忍住不在博客里吐槽酒店. 午饭 ...

  7. [Bzoj]5343: [Ctsc2018]混合果汁

    5343: [Ctsc2018]混合果汁 题目描述 小 R 热衷于做黑暗料理,尤其是混合果汁. 商店里有 \(n\) 种果汁,编号为 \(0,1,\cdots,n-1\) .\(i\) 号果汁的美味度 ...

  8. BZOJ5340: [Ctsc2018]假面

    BZOJ5340: [Ctsc2018]假面 https://lydsy.com/JudgeOnline/problem.php?id=5340 分析: 背包,只需要求\(g_{i,j}\)表示强制活 ...

  9. [LOJ#2553][CTSC2018]暴力写挂

    [LOJ#2553][CTSC2018]暴力写挂 试题描述 temporaryDO 是一个很菜的 OIer .在 4 月,他在省队选拔赛的考场上见到了<林克卡特树>一题,其中 \(k = ...

  10. CTSC2018 & APIO2018 颓废 + 打铁记

    CTSC2018 & APIO2018 颓废 + 打铁记 CTSC 5 月 6 日 完美错过报道,到酒店领了房卡放完行李后直接奔向八十中拿胸牌.饭票和资料.试机时是九省联考的题,从来没做过,我 ...

随机推荐

  1. 关于Meta标签的一些知识

    1.定义文档的编码格式(H5的标准写法) <meta charset="UTF-8"> 2.声明指定的浏览器以及版本 <meta http-equiv=" ...

  2. 大量界面刷新时手动Dispose也是有必要的

    在winform窗体上拖一个flowLayoutPane,一个Button,项目中再创建一个用户控件UcControl,用户控件上放几十个子控件 private void button1_Click( ...

  3. Hibernate非主键一对多关联。

    Unit表 id,code User表 id,ucode ...@ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name="ucode" ...

  4. Netty入门(4) - 附带的ChannelHandler和Codec

    使用SSL/TLS创建安全的Netty程序 Java提供了抽象的SslContext和SslEngine,实际上SslContext可以用来获取SslEngine来进行加密和解密.Netty拓展了Ja ...

  5. 访问tp3.2的项目时出现No input file specified.的解决办法

    解决办法很简单如下: 打开.htaccess 在RewriteRule 后面的index.php教程后面添加一个“?” 原来的代码如下 <IfModule mod_rewrite.c> O ...

  6. SSM框架中将时间写入数据库的格式定义

    //声明Date类接收的数据格式 @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date addtime;

  7. plist反序列化

    // //  ViewController.m //  03-plist文件的一个反序列化 // //  Created by jerry on 15/9/28. //  Copyright (c) ...

  8. MySQL— 基础

    目录 一.MySQL概述 二.下载安装 三.数据库操作 四.数据表操作 五.表内容操作 一.MySQL概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracl ...

  9. python中 __name__及__main()__的妙处

    python中 __name__及__main()__的妙处 #hello.pydef sayHello(): str="hello" print(str); if __name_ ...

  10. mysql系列十三、mysql中replace into和duplicate key的使用区

    一.创建测试表 1.创建唯一索引"b" CREATE TABLE `test2` ( `id` int(10) NOT NULL AUTO_INCREMENT, `a` varch ...