NOIP2017普及组解题报告
刚参加完NOIP2017普及,只考了210,于是心生不爽,写下了这篇解题报告。。。(逃
第一次写博,望dalao们多多指导啊(膜
第一题score,学完helloworld的人也应该都会吧,之前好多人0分或60分据说是精度炸了,后面不是又重测了么233
直接给代码
#include <stdio.h>
int a,b,c;
double a1,b1,c1;
int main()
{
scanf("%d %d %d",&a,&b,&c);
a1=a*0.2;
b1=b*0.3;
c1=c*0.5;
printf("%.lf",a1+b1+c1);
;
}
许多人不会像我这么写而是除以10再去乘,毕竟都是是的整数倍
第二题librarian,这道题简单分析就考了个排序+取余,没什么技术含量,可是由于这个万恶的单词,有个原本265的大佬没拼对然后就gg到165,身边还有一个dalao第三题写了好多却只有十五分,然后第二题多打了个0然后内存就炸了。。。还有某位-1没有打\n。。。(同情
也是直接给代码吧
#include<stdio.h>
#include<algorithm>
#include<iostream>
using namespace std;
];
int main()
{
,ss=;
scanf("%d%d",&n,&q);
;i<n;i++)
scanf("%d",&a[i]);
sort(a,a+n);
;i<q;i++)
{
scanf("%d %d",&b,&c);
s=;ss=;
;j<=b;j++)
s=s*;
;j<n;j++)
{
if(a[j]%s==c)
{
printf("%d\n",a[j]);
ss=;
break;
}
}
)printf("-1\n");
}
;
}
第三题...先给题目吧





这道题当我看题目时感觉挺简单的,只是觉得是一个普通的dfs+剪枝,可是当真正写的时候就不知道从何写,如何剪枝,然后调试了1小时。。。未果,注释矣。。。
之后,我写了一个单纯的dfs,纯搜,然后水了65分,代码如下
#include <stdio.h>
][],x,y,color;
;
void dfs(int x1,int y1,int magic,int money,int w_i_c)//w_i_c=What is the color?
{
if(x1==m&&y1==m)
{
if(money<ans) ans=money;
return ;
}
else
{
if(!magic)//当未施展魔法时
{
<=m)//判边界条件
{
][y1]>)//当有颜色时
{
][y1]) dfs(x1+,y1,,money,-);
][y1]) dfs(x1+,y1,,money+,-);
}//只需考虑颜色的变换
][y1]==) dfs(x1+,y1,,money+,a[x1][y1]);
}
<=m)
{
]>)
{
]) dfs(x1,y1+,,money,-);
]) dfs(x1,y1+,,money+,-);
}
]==) dfs(x1,y1+,,money+,a[x1][y1]);//颜色就为上一个的颜色
}//同上
}
else//当施展过魔法
{
][y1]!=)
{
][y1]==w_i_c) dfs(x1+,y1,,money,-);
][y1]!=w_i_c) dfs(x1+,y1,,money+,-);
}
]!=)
{
]==w_i_c) dfs(x1,y1+,,money,-);
]!=w_i_c) dfs(x1,y1+,,money+,-);
}
}
}
}
int main()
{
scanf("%d %d",&m,&n);
;i<=n;i++)
{
scanf("%d %d %d",&x,&y,&color);
a[x][y]=color+;//其余为0表示无色,+1保证非负性
}
dfs(,,,,-);//分别代表横坐标,纵坐标,是否施展♂过魔♂法,钱,颜色;-1是一个特殊值
) printf("-1");//如果达到这个值就代表ans没有改变,说明到不了终点
else printf("%d",ans);
;
}
第四题说实话没怎么看懂...
粘上一个小学生20分的代码吧。。。
#include<stdio.h>
]={},dis[]={};
int main()
{
,flag,start;
scanf("%d%d%d",&n,&d,&k);
;i<=n;i++)
{
scanf("%d%d",&dis[i],&sco[i]);
}
;
;i<=n;i++)
{
)
{
sum+=sco[i];
}
}
if(sum<k)
{
printf("-1");
;
}
flag=;
)
{
sum=;start=;
ans++;
if(ans<d)
{
;i<=n;i++)
{
&&dis[i]-start>=d-ans&&dis[i]-start<=d+ans)
{
sum+=sco[i];
start=dis[i];
if(sum>=k)
{
printf("%d",ans);
;
}
}
}
}
else
{
;i<=n;i++)
{
&&dis[i]-start>=&&dis[i]-start<=d+ans)
{
sum+=sco[i];
start=dis[i];
if(sum>=k)
{
printf("%d",ans);
;
}
}
}
}
}
}
今天就到这里,以后我会多多写博,把自己的意见与大家分享,有不解或志同道合者可以加qq:2396389683,再见
NOIP2017普及组解题报告的更多相关文章
- NOIP 2018 普及组 解题报告
目录 标题统计 题目链接 思路 代码 龙虎斗 题目链接: 思路 代码 摆渡车 题目链接: 思路 对称二叉树 题目链接 思路: 先来解释一下为毛现在才来发解题报告: 其实博主是参加过NOIP 2018普 ...
- NOIP2015&2016普及组解题报告
NOIP2015普及组题目下载 NOIP2016普及组题目下载 NOIP2015普及组题目: NOIP2018RP++ NOIP2016普及组题目 NOIP2018RP++ T1 金币\((coin. ...
- NOIP2016普及组解题报告
概述 \(NOIP2016\)普及组的前三题都比较简单,第四题也有很多的暴力分,相信参加了的各位\(OIer\)在\(2016\)年都取得了很好的成绩. 那么,我将会分析\(NOIP2016\)普及组 ...
- NOIP2016提高组解题报告
NOIP2016提高组解题报告 更正:NOIP day1 T2天天爱跑步 解题思路见代码. NOIP2016代码整合
- [NOIP2017普及组]跳房子(二分,单调队列优化dp)
[NOIP2017普及组]跳房子 题目描述 跳房子,也叫跳飞机,是一种世界性的儿童游戏,也是中国民间传统的体育游戏之一. 跳房子的游戏规则如下: 在地面上确定一个起点,然后在起点右侧画 nn 个格子, ...
- 「LOJ 6373」NOIP2017 普及组题目大融合
NOIP2017 普及组题目大融合 每个读者需要有某个后缀的书,可以暴力map,复杂度\(o(9*nlog(n))\),也可以反串建trie树,复杂度\(o(9*n)\). 故可以求出需要的最少的RM ...
- P3956 [NOIP2017 普及组] 棋盘
P3956 [NOIP2017 普及组] 棋盘 题目 题目描述 有一个 m×m 的棋盘,棋盘上每一个格子可能是红色.黄色或没有任何颜色的.你现在要从棋盘的最左上角走到棋盘的最右下角. 任何一个时刻,你 ...
- NOIP2017普及组比赛总结
期中考总结&NOIP2017总结 2017年11月11日,我第二次参加NOIP普及组复赛.上一年,我的得分是250分,只拿到了二等奖.我便把目标定为拿到一等奖,考到300分以上. 早上8点多, ...
- NOIP2017普及组初赛试题及答案
普及组C++语言试题 一.单项选择题(共 20 题,每题 1.5 分,共计 30 分:每题有且仅有一个正确选项) 1.在 8 位二进制补码中,10101011 表示的数是十进制下的( ). A. 43 ...
随机推荐
- java语言将任意一个十进制数数字转换为二进制形式,并输出转换后的结果
package com.llh.demo; import java.util.Scanner; /** * * @author llh * */ public class Test { /* * 将任 ...
- c++学习笔记---03---从一个小程序说起2
从一个小程序说起2 要求:编写一个程序,要求用户输入一串整数和任意数目的空格,这些整数必须位于同一行中,但允许出现在该行中的任何位置.当用户按下键盘上的"Enter"键时,数据输入 ...
- 对象作为 handleEvent
elem.addEventListener("click", obj, false); //用对象作为处理函数 var obj = { handleEvent: ...
- IE (6-11)版本,在使用iframe的框架时,通过a标签javascript:; 和js跳转parent.location的时候 出现在新页面打开的情况
问题描述: 使用iframe的情况下,在子框架中,使用如下形式的跳转: <a href="javascript:;" onclick="parent.locatio ...
- Python中的输出
1.Python的输出语句 Python输出语句是print,但是python2.x与3.x又有点区别.python2.x输出 print "xxx"能成功执行,而3.x不行,所以 ...
- Maven 编译错误 Dynamic Web Module 3.0 requires Java 1.6 or newer 解决方案
Eclipse Maven 开发一个 jee 项目时,编译时遇到以下错误:Description Resource Path Location TypeDynamic Web Module 3.0 r ...
- DevExpress.XtraEditors.TextEdit 设为密码输入框
DevExpress.XtraEditors.TextEdit 设为密码输入框,解决办法: 设计窗口-->属性Properties-->Mask节点-->PasswordChar输入 ...
- [转载] hessian学习
转载自http://www.cnblogs.com/yjmyzz/p/hessian-helloworld.html hessian是一个采用二进制格式传输的服务框架,相对传统soap web ser ...
- java之JVM学习--基本机构
JDK,JRE,JVM关系图 JVM物理结构: jvm内存区详解: 程序计数器 程序计数器(Program Counter Register)是一块较小的内存空间,它的作用可以看做是当前线程所执行的字 ...
- 使用apache进行域名绑定
[背景] 项目需要搭建一套mysqlapi的开发环境,进行域名绑定 [方法] 主要方式通过修改apache的vhost配置文件,重启apache服务,以及最终在客户端绑定hosts. 1.查看apac ...