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的更多相关文章
随机推荐
- css 找到隐藏元素个数
<form> <input type="hidden" name="email" /> <input type=" ...
- 延迟实例化 Lazy<T>
之前写的设计模式 单例模式中,推荐了使用Lazy<T>来达到线程安全和减少系统资源消耗的作用. 作用及优点: 创建某一个对象需要很大的消耗,而这个对象在运行过程中又不一定用到,为了避免每次 ...
- 02-TypeScript中新的字符串
TypeScript中引入了字符串模板,通过字符串模板可以方便的实现字符串换行的连接.方便变量等. 1.在WebStorm中新建一个文件,后缀名为ts. 在建立ts文件时,WebStorm会问你是否需 ...
- centos 7 && dotnet core 2.0 && nginx && supervisor
前提 系统:centos 7 目录:/home/wwwroot/www.wuball.com dotnet core 2.0 官方指引 sudo rpm --import https://packag ...
- JAVA基础第五组(5道题)
21.[程序21] 题目:求1+2!+3!+...+20!的和 1.程序分析:此程序只是把累加变成了累乘. 思路:用递归的思想. package com.niit.homework1; import ...
- 结对编程1---基于Flask的四则运算题目生成器
项目代码地址 / WEB应用地址 / 合作伙伴iFurySt博文链接 需求分析 本次程序是基于原有的控制台四则运算器的基础上,改成WEB的形式,同时还增加了一些新的功能.同时因为交互方式的改变,代码也 ...
- 201521123106《java程序设计》第四周学习总结
1. 本周学习总结 2. 书面作业 1.注释的应用使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 面向对象设计(大作业1-非常重要)2.1 讲故事:将在网上商 ...
- 201521123040《Java程序设计》第1周学习总结
1.本周学习总结 -初步接触JAVA,安装了JDK和eclipse,注册了码云,PTA,博客. -还没能熟悉eclipse,不能熟练把ec上的代码同步到码云. -不会编写程序,不了解JAVA的编写规则 ...
- 201521123039 《java程序设计》第十二周学习总结
1. 本周学习总结 2. 书面作业 将Student对象(属性:int id, String name,int age,double grade)写入文件student.data.从文件读出显示. 字 ...
- 201521123042 《Java程序设计》第12周学习总结
本次作业参考文件 正则表达式参考资料 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student对象(属性:int id, String ...