[NOIP2015] 普及组
模拟
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int k,n;
scanf("%d",&k);
int t=;
int day=;//day记录每日工资
int coin=;
while(t<k){//t记录天数
for(int i=;i<=day;i++){
t++;
if(t>k)break;//天数到了就停
coin+=day;
}
day++;
}
printf("%d",coin);//输出
return ;
}
金币
/*by SilverN*/
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<cmath>
using namespace std;
const int mx[]={,,,-,,,,-,-};
const int my[]={,,,,-,,-,,-};
const int inf=1e5;
int n,m;
char mp[][];
int cnt[][];
int main(){
int i,j;
scanf("%d%d",&n,&m);
memset(mp,'.',sizeof mp);
for(i=;i<=n;i++)
scanf("%s",mp[i]+);
for(i=;i<=n;i++)
for(j=;j<=m;j++){
if(mp[i][j]=='*'){
cnt[i][j]=inf;
continue;
}
for(int k=;k<=;k++){
int nx=i+mx[k];
int ny=j+my[k];
// printf("%c ",mp[nx][ny]);
if(mp[nx][ny]=='*')
++cnt[i][j];
}
}
for(i=;i<=n;i++){
for(j=;j<=m;j++){
if(cnt[i][j]==inf)
printf("*");
else printf("%d",cnt[i][j]);
}
printf("\n"); }
return ;
}
扫雷游戏
数学归纳 扫描
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
using namespace std;
const int mxn=;
int n,m;
int num[mxn];
int c[mxn];
int cnt[][mxn];
int smm[][mxn];
int main(){
int i,j;
scanf("%d%d",&n,&m);
for(i=;i<=n;++i)scanf("%d",&num[i]);
for(i=;i<=n;++i){
scanf("%d",&c[i]);
}
for(i=;i<=n;++i){
smm[i&][c[i]]=(smm[i&][c[i]]+num[i])%;
cnt[i&][c[i]]++;
}
int ans=;
for(i=;i<=n;++i){
ans=(ans+i*((smm[i&][c[i]]+(cnt[i&][c[i]]-)*num[i]%)%))%; }
cout<<ans<<endl;
return ;
}
求和
/*by SilverN*/
#include<iostream>
#include<algorithm>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<queue>
using namespace std;
const int mxn=;
int read(){
int x=,f=;char ch=getchar();
while(ch<'' || ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>='' && ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
}
priority_queue<int>q;
int n;
int d[mxn];
int a[mxn];
int ans[mxn];
int main(){
n=read();
int i,j;
for(i=;i<=n;i++)
d[i]=read();
for(j=;j<=n;j++)
a[j]=read();
int hd=;
for(int m=;m<=n;m++){
int pos=,mx=;
for(i=hd+;i<=n;i++){
if(*(d[i]-d[hd])+a[i]>mx){
mx=*(d[i]-d[hd])+a[i];
pos=i;
}
}
// printf("test:%d\n",mx);
int tmp=;
if(!q.empty()){
if(q.top()>mx){
ans[m]=ans[m-]+q.top();
q.pop();
continue;
}
}
ans[m]=ans[m-]+mx;
for(i=hd+;i<pos;i++){
q.push(a[i]);
}
hd=pos;
}
for(i=;i<=n;i++)printf("%d\n",ans[i]);
return ;
}
推销员
[NOIP2015] 普及组的更多相关文章
- NOIP2015普及组总结
NOIP2015普及组总结 这次考试总体感觉不错,不过觉得时间有点紧,在最后30分钟才打完. 第一题(金币coin):大大的W!爆搜O(N),一分钟打完: 第二题(扫雷游戏mine):同上: 第三题( ...
- [NOIP2015 普及组] 扫雷游戏
[NOIP2015 普及组] 扫雷游戏 难度:入门 题目描述 扫雷游戏是一款十分经典的单机小游戏.在nn行mm列的雷区中有一些格子含有地雷(称之为地雷格),其他格子不含地雷(称之为非地雷格).玩家翻开 ...
- NOIP2015普及组第四题推销员
好久没有写博客了,今天再写一篇.还是先看题: 试题描述 阿明是一名推销员,他奉命到螺丝街推销他们公司的产品.螺丝街是一条死胡同,出口与入口是同一个,街道的一侧是围墙,另一侧是住户.螺丝街一共有 N 家 ...
- 洛谷【P2669】NOIP2015普及组 T1金币
我对模拟的理解:http://www.cnblogs.com/AKMer/p/9064018.html 题目传送门:https://www.luogu.org/problemnew/show/P266 ...
- [NOIP2015普及组]求和
题目 题目描述 一条狭长的纸带被均匀划分出了n个格子,格子编号从1到n.每个格子上都染了一种颜色color_i用[1,m]当中的一个整数表示),并且写了一个数字numberi. 定义一种特殊的三元组: ...
- NOIP2015 普及组 洛谷P2671 求和 (数学)
一道数学题...... 采用分组的思想,我们要统计答案的数对满足两个条件:同奇偶,同颜色.所以可以按这两个要求分组. 然后就是分组处理了,对于每组(有k个数),这里面的任意两对数都是满足条件的,可推出 ...
- NOIP2015 普及组(Junior) 解题报告
1. 金币 (coin.cpp/c/pas) 国王将金币作为工资,发放给忠诚的骑士.第一天,骑士收到一枚金币:之后两天(第二天和第三天),每天收到两枚金币:之后三天(第四.五.六天),每天收到三枚金币 ...
- NOIP2015普及组复赛A 推销员
题目链接:https://ac.nowcoder.com/acm/contest/243/A 题目大意: 略 分析: 方法就是把疲劳值从小到大排个序,然后从尾部开始一个一个取,当选到第i(i > ...
- 【NOIP2015普及组】推销员_详解
题目 题目大意 阿明是一名推销员--螺丝街是一条直线,一端有入口,一共有 \(N(<100,000)\) 家住户,第 \(i\) 家住户到入口的距离为 \(S_i\) 米.由于同一栋房子里可以有 ...
随机推荐
- Kafka及 .NET Core 客户端
消息队列 Kafka 的基本知识及 .NET Core 客户端 消息队列 Kafka 的基本知识及 .NET Core 客户端 前言 最新项目中要用到消息队列来做消息的传输,之所以选着 Kafka ...
- tomcat配置文件详解
Tomcat系列之服务器的安装与配置以及各组件详解 tomcat 配置文件详解
- Linux 网络编程详解九
TCP/IP协议中SIGPIPE信号产生原因 .假设客户端socket套接字close(),会给服务器发送字节段FIN: .服务器接收到FIN,但是没有调用close(),因为socket有缓存区,所 ...
- Linux Linux下特殊的printf函数和fputs函数
Linux下,printf函数必须以'\n'结尾才会立刻输出到屏幕,如果没有'\n'直到输出缓冲区满了以后才会打印到屏幕上(敲击换行也算),如果需要不换行的输出,一般可以使用write函数代替.'\n ...
- sobel算子
#1,个人理解 网上查了很多资料,都说sobel算子是用来检测边缘的,分别给了两个方向上的卷积核,然后说明做法,就说这就是sobel算子.对于我个人来说,还有很多不明白的地方,所以理清下思路. #2, ...
- 纯手工搭建JSF开发环境(JSF2.2+maven+weblogic 12c/jboss EAP 6.1+)
前言: JSF 2.X因为种种原因(我个人觉得主要是因为推出太晚),再加上EJB2之前的设计过于复杂,引起很多开发人员对官方解决方案的反感,即使EJB3后来做了大量改进,国内也很少有人对EJB3感兴趣 ...
- 编写更少量的代码:使用apache commons工具类库
Commons-configuration Commons-FileUpload Commons DbUtils Commons BeanUtils Commons CLI Commo ...
- java 实现从15位~18位的身份证号码转换,校验中国大陆公民身份证、香港居民身份证、澳门身份证和台湾身份证。
package xidian.sl.netcredit.util; /** * Copyright (C) 2009-2010 Yichuan, Fuchun All rights reserved. ...
- JSP 和 ASP.NET 谁能主宰未来【转】
随着计算机行业的发展,以后到底谁才是 web 网站开发的主宰者呢? 1. 说说JSP.(本人工作中用的最多的就是JSP) JSP. JavaServer Pages 是Java技术的一部分,可以说是J ...
- <实训|第五天>通过搭建NFS,FTP实现共享文件附Vim脚本游戏
先说个事情:我周末是不更新这个系列教程的,不过其他内容的会更新,我周末就整理这一周的各种内容到我的微信公众号中,提供给大家! 期待已久的linux运维.oracle"培训班"终于开 ...