NOIP2017SummerTraining0720
这套题,看到第一题就想到了以前做过的运动鞋那道题,然后就往DP这个方向去思考,想来想去每什么思路,然后就去看第二题,第二题一看就是一道最短路的问题,但是它的建图十分困难,
怎么打都不知到该怎么建图,然后又去看第一题,推了一下,发现贪心可以过,因为每层,每次的最小值只可能怎么说呢,就是排好序后的那个头,然后塞进堆里就好了,然后划水暴力第二题10分水过,
一共拿了110分吧,考完后听了wsj的讲解以后发现第二题并不是特别难打,但是又不会,体现出水平还是十分菜。
选择困难症
时间限制: 1 Sec 内存限制: 128 MB
提交: 482 解决: 110
[提交][状态][讨论版]
题目描述
输入
输出
一行一个整数表示答案。
样例输入
2 1 3
2 2 2
样例输出
提示

这道题是不是和运动鞋很像,的确,但是价格是<=10^8所以不行,空间开不下,时间也不行,离散化也不行,然后发现,每次最优值只会在当前这个部分的价格加上以前的一个“头”来产生,
每次找最小的,然后把后一个加入,这样不就是一个堆的操作吗?然后就ok了。
#include<cstdio>
#include<algorithm>
#include<iostream>
#include<cmath>
#include<cstring>
#include<queue>
using namespace std;
typedef pair<int,int>fzy;
int m,k;
][],num[],f[];
priority_queue<fzy,vector<fzy>,greater<fzy> >q;
bool cmp(int x,int y){return x<y;}
int main()
{
scanf("%d%d",&m,&k);
;i<=m;i++)
{
scanf("%d",&num[i]);
;j<=num[i];j++)
scanf("%d",&a[i][j]);
sort(a[i]+,a[i]+num[i]+,cmp);
}
,i,j;
;i<=num[]&&i<=k;i++)
f[i]=a[][i];
top=i-;
];
;i<=m;i++)
{
) continue;
while (!q.empty()) q.pop();
;j<=num[i]&&j<=k;j++)
q.push(make_pair(f[]+a[i][j],));
fzy x;
;(!q.empty())&&j<=k;j++)
{
x=q.top();
ft[j]=x.first;
q.pop();
]-f[x.second],x.second+));
}
top=max(top,j-);
;j<=top;j++)
f[j]=ft[j];
}
printf("%d\n",f[k]);
}
规避
时间限制: 1 Sec 内存限制: 128 MB
提交: 170 解决: 24
[提交][状态][讨论版]
题目描述
输入
输出
一行共一个数表示最短长度,保留4 位小数。
样例输入
4
0 0
1 0
1 1
0 1
4
2 2
3 2
3 3
2 3
1 7
样例输出
提示
这道题就看了一下,没什么特别的思路。
反抗希碧拉系统续
时间限制: 1 Sec 内存限制: 128 MB
提交: 27 解决: 3
[提交][状态][讨论版]
题目描述
输入
输出
一行,仅一个整数,表示符合要求的字符串数量对2^32 取模。
样例输入
5
样例输出
提示

正解要用ac自动机+矩阵乘法。
NOIP2017SummerTraining0720的更多相关文章
随机推荐
- 我的前端故事----我为什么用GraphQL
背景 今年我在做一个有关商户的app,这是一个包含商户从入网到审核.从驳回提交到入网维护的完整的生命周期线下推广人员使用的客户端软件,但故事并没有这么简单... 疑问 随着app的逐渐完善,遇到的问题 ...
- 两个input在同一行连着不留缝隙
方法1:让两个input 连在一起写 不换行 <div class="inputDiv"> <input type="text" placeh ...
- mysql存储过程 基本语法
话不多说 一.MySQL 创建存储过程 "pr_add" 是个简单的 MySQL 存储过程,这个存储过程有两个 int 类型的输入参数 "a"."b& ...
- JavaScript面向对象(二)——成员属性、静态属性、原型属性与JS原型链
前 言 JRedu 上一篇博客中,我们介绍了JS中的面向对象,并详细的解释了this的指向问题.本篇博客,我们继续来学习JS的面向对象.来深入理解一下JavaScript OOP中的成员属性/方 ...
- 【前端基础】动态脚本与JSONP
博主入职两个月了,越来越感受到打好基础对于前端工程师的重要性,在向着狂拽酷炫的框架&构建工具高速狂奔之前,必须有一个坚实的基础打底,才不至于轻易翻车.所以博主最近一直在恶补<JS高级程序 ...
- Spring定时任务quartz表达式
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcytp32 0 0 12 * * ?---------------在每天中午12: ...
- 关于Linux中cd的一些快捷用法
cd 命令使用的一些小技巧 cd 进入主目录 cd ~ 同样进入主目录 cd - 返回当前目录之前所在的目录 cd .. 返回上级目录 cd ../.. 返回上级的上级目录 cd !$ 把上个命令的参 ...
- SNS团队Beta阶段第一次站立会议(2017.05.22)
1.立会照片 2.每个人的工作 成员任务分工: 成员 今天已完成的工作 明天计划完成的工作 罗于婕 修改之前的文档 界面优化 龚晓婷 修改之前的文档 界面优化 林仕庄 修复不能发音bug 界面图标 ...
- 201521123060 《Java程序设计》第3周学习总结
1. 本周学习总结 2. 书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; p ...
- 201521123056 《Java程序设计》第1周学习总结
1. 本周学习总结 java语言结构简单,但功能齐全,同时能够在不同系统平台上编译,但编译的前提是系统要有安装JVM(即java虚拟机),JVM是java实现跨平台的最核心部分.本周还学习了JDK.J ...