NOIP simulation
NOIP 模拟赛
Day 1
题目名称LGTB 玩扫雷LGTB 学分块LGTB 打THD
英文代号mine divide thd
时限1 秒1 秒1 秒
输入文件mine.in divide.in thd.in
输出文件mine.out divide.out thd.out
内存限制64Mb 64Mb 64Mb
测试点个数10 10 20
总分100 100 100
时间:2014 年10 月4 日
1
LGTB 玩扫雷
在一个n m 的棋盘上,有位置上有雷(用“*” 表示),其他位置是空地(用“.” 表示)。
LGTB 想在每个空地上写下它周围8 个方向相邻的格子中有几个雷。
请帮助他输出写了之后的棋盘
输入
输入第一行包含两个整数n, m 代表棋盘大小
接下来n 行,每行m 个字符,代表棋盘
1 n,m 1000
输出
输出包含n 行,每行m 个字符,代表LGTB 写了数字之后的棋盘
样例
样例输入样例输出
3 3
*.*
...
*.*
*2*
242
*2*
2
LGTB 学分块
LGTB 最近在学分块,但是他太菜了,分的块数量太多他就混乱了,所以只能分成3 块
今天他得到了一个数组,他突然也想把它分块,他想知道,把这个数组分成3 块,块可以为空。假设3 块各
自的和中的最大值最小
请输出分完之后3 块中的最大值
输入
输入第一行包含一个整数n 代表数组大小
接下来n 个整数a1, a2, ..., an,代表数组
对于40% 的数据,1 n 10
对于70% 的数据,1 n 103
对于100% 的数据,1 n 105, 1 ai 107
输出
输出包含1 个整数,代表分块完成后3 块中的最大值
样例
样例输入样例输出
10
2 5 1 4 7 3 6 2 5 1
14
3
LGTB 玩THD
LGTB 最近在玩一个类似DOTA 的游戏名叫THD
有一天他在守一座塔,对面的N 个小兵排成一列从近到远站在塔前面
每个小兵有一定的血量hi,杀死后有一定的金钱gi
每一秒,他都可以攻击任意一个活着的小兵,对其造成P 点伤害,如果小兵的血量低于1 点,小兵死亡,他
得到金钱。他也可以不攻击任何小兵。
每一秒LGTB 攻击完毕之后,塔会攻击距离塔最近的一个活着的小兵,对其造成Q 点伤害,如果小兵的血
量低于1 点,小兵死亡,LGTB 不会得到金钱
现在LGTB 想知道,在他选择最优策略时,他能得到多少钱。
输入
输入第一行包含3 个整数P, Q, N
接下来N 行,每行包含2 个整数hi, gi
第i 个小兵和塔之间的距离为i
输入的意义如题面所示
对于20% 的数据,1 N 4
对于50% 的数据,1 N 20
对于100% 的数据,20 P,Q 200, 1 N 100, 1 hi 200, 0 gi 106
输出
输出包含一个整数W,代表LGTB 最多能获得的金钱
样例
样例输入样例输出
20 60 3
80 100
80 200
120 300
500
4
- #include<fstream>
- using namespace std;
- char a[][];
- const int d[][]={{-,},{-,},{,},{,},{,},{,-},{,-},{-,-}};
- int n;int m;
- int main(){
- ifstream fin("mine.in");
- ofstream fout("mine.out");
- fin>>n>>m;
- for(int i=;i<=n;i++)
- for(int j=;j<=m;j++)
- fin>>a[i][j];
- for(int i=;i<=n;i++)
- for(int j=;j<=m;j++){
- if(a[i][j]=='.'){
- a[i][j]='';
- for(int k=;k<;k++){
- int h=i+d[k][];
- int p=j+d[k][];
- if(a[h][p]=='*')a[i][j]++;
- }
- }
- }
- for(int i=;i<=n;i++)
- fout<<&a[i][]<<endl;
- return ;
- }
- #include<fstream>
- using namespace std;
- class divide{
- public:
- static long long binary_divide(long long * ps,int L,int R){
- int lft=L;int rght=R;
- long long best=1e12;
- while(lft<rght){
- int m=(lft+rght)>>;
- long long s1=ps[m]-ps[L-];
- long long s2=ps[R]-ps[m];
- long long t=max(s1,s2);
- if(t<best)best=t;
- if(s1==s2)break;
- if(s1<s2)lft=m+;
- else rght=m;
- }
- return best;
- }
- };
- int n;int a[];
- long long ps[];
- long long ans=1e12;
- int main(){
- ifstream fin("divide.in");
- ofstream fout("divide.out");
- fin>>n;
- for(int i=;i<=n;i++)
- fin>>a[i];
- if(n==){
- fout<<a[]<<endl;
- return ;
- }
- if(n==){
- fout<<max(a[],a[])<<endl;
- return ;
- }
- if(n==){
- fout<<max(a[],max(a[],a[]))<<endl;
- return ;
- }
- for(int i=;i<=n;i++)
- ps[i]=ps[i-]+a[i];
- for(int i=;i<n;i++){
- long long s1=ps[i];
- long long s2=divide().binary_divide(ps,i+,n);
- long long t=max(s1,s2);
- if(t<ans)ans=t;
- }
- fout<<ans<<endl;
- return ;
- }
- #include<fstream>
- #include<algorithm>
- using namespace std;
- const int bld=;
- const int scr=;
- class thd{
- public:
- static void dynamicProgramming(int (* soldier)[],int (*m)[],int n,int p,int q){
- for(int i=;i<=n;i++)
- fill(m[i],m[i]+,-1e9);
- m[][]=;
- for(int i=;i<=n;i++){
- int * s=soldier[i];
- int t=(s[bld]+q-)/q;
- int h=(s[bld]-q*t+q+p-)/p;
- for(int j=;j<=;j++){
- if(j-t>=)m[i][j]=m[i-][j-t];
- if(j+h-t+>=&&(m[i-][j+h-t+]+s[scr])>m[i][j]){
- m[i][j]=m[i-][j+h-t+]+s[scr];
- }
- }
- }
- }
- };
- int soldier[][];
- int m[][];
- int n;int p;int q;int best=-1e9;
- int main(){
- ifstream fin("thd.in");
- ofstream fout("thd.out");
- fin>>p>>q>>n;
- for(int i=;i<=n;i++)
- fin>>soldier[i][bld]>>soldier[i][scr];
- thd().dynamicProgramming(soldier,m,n,p,q);
- for(int i=;i<=;i++)
- if(m[n][i]>best)best=m[n][i];
- fout<<best<<endl;
- return ;
- }
explanation
m[i][j]means kill soldier i with j attacktion remain.
NOIP simulation的更多相关文章
- Solution Set - 神奇 NOIP 模拟赛
\[\mathfrak{\text{Defining }\LaTeX\text{ macros...}}\newcommand{\vct}[1]{\boldsymbol{#1}}\newcommand ...
- NOIP模板整理计划
先占个坑 [update]noip结束了,弃了 一.图论 1.单源最短路 洛谷P3371 (1)spfa 已加SLF优化 #include <iostream> #include < ...
- NOIp 11.11/12
最后一场比较正式的NOIp模拟赛,写一发小总结.题目没什么好说的,大部分很简单,先贴一下代码. 1111 T1 //string //by Cydiater //2016.11.11 #include ...
- NOIp 1109
停课后的第一场模拟赛,应该不会怎么说今天的模拟赛,除了第一题不知道那种筛法的复杂度是$log$的没敢写,其他都挺水的.另外,第三题的数据也弱化了,建议去这里再交一遍. 贴一下AC代码,有兴趣可以参考一 ...
- NOIp 2016 总结
NOIp 2016 总结 -----YJSheep Day 0 对于考前的前一天,晚自习在复习图论的最短路和生成树,加深了图的理解.睡得比较早,养足精力明日再战. Day 1 拿到题目,先过一边,题目 ...
- 历年NOIP水题泛做
快noip了就乱做一下历年的noip题目咯.. noip2014 飞扬的小鸟 其实这道题并不是很难,但是就有点难搞 听说男神错了一个小时.. 就是$f_{i,j}$表示在第$i$个位置高度为$j$的时 ...
- [杂谈]冲NOIP一等奖。。
唉不想多说了. 真是一段“传奇”的经历啊. 还是那句话..“是的我上次什么都没说就走了...”这次也一样. 我还是太单纯的以为我们是肯定能够参加北大的夏令营的..然而结果真是意料之外啊. 本来我以为我 ...
- 【最后的抒情】【离NOIP还有9个小时】
学了NOIP 大概十一个月左右,中途的插班生.从2015年12月底开始学信息竞赛,在寒假的时候还笑着我还有九个月才考试呢,生竞就只有两个月了.没错我是从生物竞赛转过来的.记得当初写申请的时候,写的理由 ...
- Ubuntu 配置 no-ip
安装Python开发依赖包 sudo apt-get install python-dev 配置PIP并安装noipy sudo apt-get install python-pip sudo pip ...
随机推荐
- Tomcat集群---Cluster节点配置
<!-- Cluster(集群,族) 节点,如果你要配置tomcat集群,则需要使用此节点. className 表示tomcat集群时,之间相互传递信息使用那个类来实现信息之间的传递. cha ...
- jena读取和解析本体文件
使用jena开发本体应用程序时,首先需要对我们利用本体构建工具,如protege等,构建的本体文件,如owl.rdf等读取并解析得到本体模型.下面给出相应的代码,不对的地方请指正. (基于jena 2 ...
- java 蓝桥杯算法提高 矩阵乘法
思路:根据提示的内容,我们可以得到c[i][j] += a[i][k]*b[k][j],k>=0&&k<s PS:这道题本身不难,但是当我定义A[m][s] B[s][n] ...
- Spark会产生shuffle的算子
去重 def distinct() def distinct(numPartitions: Int) 聚合 def reduceByKey(func: (V, V) => V, numParti ...
- NoSuchBeanDefinitionException:No qualifying bean of type found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency.
报错如下: NoSuchBeanDefinitionException:No qualifying bean of type found for dependency: expected at l ...
- 477. Total Hamming Distance总的二进制距离
[抄题]: The Hamming distance between two integers is the number of positions at which the correspondin ...
- Lua与C交换
1.C调用Lua函数 (1) 首先要进行Lua的初始化,这个主要是lua_open和luaL_openlibs函数 (2)然后是解析并编译lua的代码,这个主要是luaL_dofile函数 (3) ...
- Spring.net init-method destroy-method
<object id="exampleInitObject" type="Examples.ExampleObject" init-method=&quo ...
- 一个新手后端需要了解的前端核心知识点之position(一)
以下内容是基于观看慕课网视频教程总结的知识点,边打代码边总结,符合自己的思维习惯.不是针对新手入门 我做程序的初衷是想做一个网站出来.HTML语言当然重要啊,缺什么就百度什么,很浪费时间,还是好好的打 ...
- mosquitto ---配置SSL/TLS linux
mosquitto ---配置SSL/TLS 摘自: https://www.cnblogs.com/saryli/p/9821343.html 在服务器电脑上面创建myCA文件夹, 如在/home/ ...