第一题,很水,直接上代码

 #include <iostream>
#include <fstream>
#include <cstdlib>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std; ifstream fin("coin.in");
ofstream fout("coin.out"); int cnt_shu;
long long he=; int main(int argc, char** argv) {
fin>>cnt_shu;
int shi=;
for(int x=;x<=cnt_shu;x+=shi){
shi++;
if(x+shi-<=cnt_shu)he+=shi*shi;
else he+=(cnt_shu-x+)*shi;
}
fout<<he;
return ;
}

第二题,同样很水

 #include <iostream>
#include <fstream>
#include <cstdlib>
#include <string>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std; ifstream fin("mine.in");
ofstream fout("mine.out"); int cnt_hang=,cnt_lie=;
int jv[][];
int hez[]={,-,,,,-,,-};
int zoz[]={,,,-,,-,-,}; int zhao(int he,int zo){ int ans=;
for(int x=;x<;x++){
int han=he+hez[x];
int zon=zo+zoz[x];
if(he<||zo<||he>cnt_hang||zo>cnt_lie)continue;
if(jv[han][zon]==)continue;
else ans++;
}
return ans;
} int main(int argc, char** argv) {
fin>>cnt_hang>>cnt_lie;
for(int x=;x<=cnt_hang;x++){
string a;fin>>a;
for(int y=;y<=cnt_lie;y++)if(a[y-]=='*')jv[x][y]=;
}
for(int x=;x<=cnt_hang;x++){
for(int y=;y<=cnt_lie;y++){
if(jv[x][y]==)fout<<zhao(x,y);
else fout<<"*";
}
fout<<endl;
}
return ;
}

第三题本来信心满满以为可以过,结果学军的数据测出来知过了2组,本以为没有希望了,结果官方测出是60分,还有40分是因为最后一步作死的没有mod,233.

我是找了规律才勉强将官方数据A过,学军的,真心做不到.

 #include <iostream>
#include <fstream>
#include <cstdlib>
#include <cstring>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std; ifstream fin("sum.in");
ofstream fout("sum.out"); int cnt_ge,cnt_col=;
int id_num[];
int head[],cnt=;
int zhan[][];
int zhan2[];
long long ans;
struct lian{
int nxt;
int to;
};
lian cun[]; void add(int sze,int yan);
void sou(int yan);
void suan_he(int ces); void add(int sze,int yan){
cnt++;
cun[cnt].to=sze;
cun[cnt].nxt=head[yan];
head[yan]=cnt;
return;
} int gs1=,gs2=;
long long he1=0ll,he2=0ll;
void sou(int yan){
memset(zhan,,sizeof(zhan));
int sze=cun[head[yan]].to;
gs1=,gs2=;
he1=0ll,he2=0ll;
for(int x=head[yan];x!=-;x=cun[x].nxt){
int dao=cun[x].to;
if((dao+sze)%==){
he1+=dao;gs1++;
zhan[][gs1]=dao;
}
else{
he2+=dao;gs2++;
zhan[][gs2]=dao;
}
} for(int x=;x<;x++)suan_he(x);
return;
} void suan_he(int ces){
int gs=;long long he=0ll;
if(ces==){gs=gs1;he=he1;}
else {gs=gs2;he=he2;}
if(gs==||gs==)return;
int shu=;
for(int x=gs;x>=;x--){
shu=((he+zhan[ces][x])/*id_num[zhan[ces][x]])*;
ans+=shu*%;
ans*=;
} return;
} int main(int argc, char** argv) {
fin>>cnt_ge>>cnt_col;
memset(head,-,sizeof(head));
for(int x=;x<=cnt_ge;x++)fin>>id_num[x];
for(int x=;x<=cnt_ge;x++){
int yan;fin>>yan;
add(x,yan);
}
for(int x=;x<=cnt_col;x++){
sou(x);
}
fout<<ans%;
return ;
}

第四题,我到现在为止都不知道它为什么学军的数据A过,官方数据A过,在我心中,这种算法本身就是错误的,我是想将选所有人的情况

都算出来,然后再一个一个减的(用了传说中的优先队列),怎么对的完,是数据太弱了,还是我运气太好了,还是说我的方法本身就是正确的???

 #include <iostream>
#include <fstream>
#include <cstdlib>
#include <cstring>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std; ifstream fin("salesman.in");
ofstream fout("salesman.out"); int cnt_shu;
int jv[];
int a[];
int ans[];
int shang[];
int hou[];
int gs=;
int dui[];
int wei;
void pout(int sze);
void zhuan( );
void na(int sze); void pout(int sze){
gs++;dui[gs]=sze;
int now=gs,fu;
while(now/>){
fu=now/;
if(a[dui[fu]]<a[dui[now]])return;
int b=dui[fu];dui[fu]=dui[now];dui[now]=b;
now=fu;
}
return;
} void zhuan( ){
for(int x=;x<=cnt_shu;x++)shang[x]=x-;
for(int x=;x<cnt_shu;x++)hou[x]=x+;
for(int x=;x<cnt_shu;x++){
int dai1=a[dui[]];
int dai2=(jv[wei]-jv[shang[wei]])*+a[wei];
if(dai1>=dai2){
ans[cnt_shu-x]=ans[cnt_shu-x+]-dai2;
wei=shang[wei]; na(wei);
}
else{
hou[shang[dui[]]]=hou[dui[]];
shang[hou[dui[]]]=shang[dui[]];
na();
ans[cnt_shu-x]=ans[cnt_shu-x+]-dai1; }
}
return;
} void na(int sze){
dui[sze]=dui[gs];
gs--;
int now=sze,zi=;
while(now*<=gs){
zi=now*;
if(a[dui[zi+]]<a[dui[zi]]&&now*<gs)zi++;
if(a[dui[zi]]>a[dui[now]])return;
int b=dui[zi];dui[zi]=dui[now];
dui[now]=b;now=zi;
}
return;
} int main(int argc, char** argv) {
fin>>cnt_shu;
for(int x=;x<=cnt_shu;x++){
fin>>jv[x];ans[cnt_shu]=jv[x]*;
}
for(int x=;x<=cnt_shu;x++){
fin>>a[x];
if(x!=cnt_shu)pout(x);
ans[cnt_shu]+=a[x];
}
wei=cnt_shu;
zhuan( );
for(int x=;x<=cnt_shu;x++)fout<<ans[x]<<endl; return ;
}

[NOIP2015pj题解]From某因为时间快了那么一点点超过下一位的蒟蒻(其实是纯代码).的更多相关文章

  1. Websphere设置JVM时区解决程序、日志时间快8小时问题

    原文链接:http://www.itpub.net/thread-1204714-1-1.html 相信很多使用Websphere的朋友会经常在Windows操作系统中遇到程序时间快8小时的问题 如果 ...

  2. noip2013Day2T3-华容道【一个蒟蒻的详细题解】

    描述 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间. 小 B 玩的华容道与经典的 ...

  3. USACO 简易题解(蒟蒻的题解)

    蒟蒻难得可以去比赛,GDOI也快到了,还是认真刷题(不会告诉你之前都在颓废),KPM 神犇既然都推荐刷USACO, 辣就刷刷. 现在蒟蒻还没刷完,太蒟刷得太慢,so 写了的搞个简易题解(没代码,反正N ...

  4. 解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题。 (默认mysql连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池。系统发布第二天访问链接关闭问题。

    解决Mysql连接池被关闭  ,hibernate尝试连接不能连接的问题. (默认MySQL连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池. 所以系统发布第二天访问会 ...

  5. 【第三课】ANR和OOM——贪快和贪多的后果(下)

    Out of Mana,法力耗尽. 内存就像法力,耗尽了就什么都不能做了.有时候一个应用程序占用了太大的内存,超过了Android系统为你规定的限制,那么系统就会干掉你,以保证其他app有足够的内存. ...

  6. MySQL-Front 出现“程序注册时间到期 程序将被限制模式下运行”解决方式

    MySQL-Front 出现“程序注册时间到期 程序将被限制模式下运行”解决方式 在用mysql-front的时候遇到显示:程序注册时间到期程序将被限制模式下运行.可以在“帮助”菜单下的点“登记”-- ...

  7. C#关于时间(获取特定格式的时间及多种方式获取当前时间戳)以及10位和13位时间戳转为特定格式

    C#关于时间(获取特定格式的时间及多种方式获取当前时间戳)以及10位和13位时间戳转为特定格式 置顶 2018年03月06日 19:16:51 黎筱曦 阅读数:19098 标签: C#时间 更多 个人 ...

  8. 【Cantor表】蒟蒻题解

    原题:传送门 (上图摘自网站OpenJudge - NOI题库2.1 Cantor表) 本蒟蒻的题解,让大神们见笑了! 首先,进行找规律. 大家可以发现: 1.当分子是一的时候,且分子和分母的和是偶数 ...

  9. 题解 P2920 【[USACO08NOV]时间管理Time Management】

    题面 作为一名忙碌的商人,约翰知道必须高效地安排他的时间.他有N工作要 做,比如给奶牛挤奶,清洗牛棚,修理栅栏之类的. 为了高效,列出了所有工作的清单.第i分工作需要T_i单位的时间来完成,而 且必须 ...

随机推荐

  1. 原生JavaScript 获取下一个/上一个同胞元素

    看JavaScript遇到的问题,研究了下 获取上一个或者下一个同胞元素,使用很多人会立马想到JQuery  prev() 和 next() 的确非常方便.那么原生的JavaScript该怎么获取 上 ...

  2. 我的第一篇博客:requestAnimationFrame学习笔记

    通常,我们在浏览器中写动画会用到哪些技术呢? flash 可以实现一些非常复杂的动画,但随着HTML5的成熟,个人感觉flash终究会成为明日黄花. css3 当前大部分现代浏览器已经对css3支持的 ...

  3. web系统

    现在的web系统已经越来越多的应用缓存技术,而且缓存技术确实是能实足的增强系统性能的.我在项目中也开始接触一些缓存的需求. 开始简单的就用jvm(java托管内存)来做缓存,这样对于单个应用服务器来说 ...

  4. 受教了,memcache比较全面点的介绍,受益匪浅,适用memcached的业务场景有哪些?memcached的cache机制是怎样的?在设计应用时,可以通过Memcached缓存那些内容?

    基本问题 1.memcached的基本设置 1)启动Memcache的服务器端 # /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 ...

  5. 求LR(0)文法的规范族集和ACTION表、GOTO表的构造算法

    原理 数据结构 // GO private static Map<Map<Integer,String>,Integer> GO = new HashMap<Map< ...

  6. highcharts-Highmaps 动态传入城市名称

    做前端按地区(地图)分布监控数据展示用了 HIGHMAPS JAVASCRIPT MAPS 控件,很好很强大. 基础实现是这样的:调用插件动态传入需要展示的数据(data),插件会在地图数据(mapd ...

  7. 在Swift中使用libxml2

    // // main.swift // C150805_libxml2r2 // http://git.oschina.net/yao_yu/Swift2015/tree/master/C150805 ...

  8. yarn源代码

    Modules-------YARN consists of multiple modules. The modules are listed below as per the directory s ...

  9. 一个c++给程序打log的单例模式类

    开发过程中需要给程序打log. 所以照着网上写了个单例模式的log类 #ifndef MISCLOGWRITER_H_ #define MISCLOGWRITER_H_ #include <io ...

  10. Hdu 3177 Crixalis's Equipment

    Crixalis's Equipment Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...