[NOIP2015pj题解]From某因为时间快了那么一点点超过下一位的蒟蒻(其实是纯代码).
第一题,很水,直接上代码
- #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某因为时间快了那么一点点超过下一位的蒟蒻(其实是纯代码).的更多相关文章
- Websphere设置JVM时区解决程序、日志时间快8小时问题
原文链接:http://www.itpub.net/thread-1204714-1-1.html 相信很多使用Websphere的朋友会经常在Windows操作系统中遇到程序时间快8小时的问题 如果 ...
- noip2013Day2T3-华容道【一个蒟蒻的详细题解】
描述 小 B 最近迷上了华容道,可是他总是要花很长的时间才能完成一次.于是,他想到用编程来完成华容道:给定一种局面,华容道是否根本就无法完成,如果能完成,最少需要多少时间. 小 B 玩的华容道与经典的 ...
- USACO 简易题解(蒟蒻的题解)
蒟蒻难得可以去比赛,GDOI也快到了,还是认真刷题(不会告诉你之前都在颓废),KPM 神犇既然都推荐刷USACO, 辣就刷刷. 现在蒟蒻还没刷完,太蒟刷得太慢,so 写了的搞个简易题解(没代码,反正N ...
- 解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题。 (默认mysql连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池。系统发布第二天访问链接关闭问题。
解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题. (默认MySQL连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池. 所以系统发布第二天访问会 ...
- 【第三课】ANR和OOM——贪快和贪多的后果(下)
Out of Mana,法力耗尽. 内存就像法力,耗尽了就什么都不能做了.有时候一个应用程序占用了太大的内存,超过了Android系统为你规定的限制,那么系统就会干掉你,以保证其他app有足够的内存. ...
- MySQL-Front 出现“程序注册时间到期 程序将被限制模式下运行”解决方式
MySQL-Front 出现“程序注册时间到期 程序将被限制模式下运行”解决方式 在用mysql-front的时候遇到显示:程序注册时间到期程序将被限制模式下运行.可以在“帮助”菜单下的点“登记”-- ...
- C#关于时间(获取特定格式的时间及多种方式获取当前时间戳)以及10位和13位时间戳转为特定格式
C#关于时间(获取特定格式的时间及多种方式获取当前时间戳)以及10位和13位时间戳转为特定格式 置顶 2018年03月06日 19:16:51 黎筱曦 阅读数:19098 标签: C#时间 更多 个人 ...
- 【Cantor表】蒟蒻题解
原题:传送门 (上图摘自网站OpenJudge - NOI题库2.1 Cantor表) 本蒟蒻的题解,让大神们见笑了! 首先,进行找规律. 大家可以发现: 1.当分子是一的时候,且分子和分母的和是偶数 ...
- 题解 P2920 【[USACO08NOV]时间管理Time Management】
题面 作为一名忙碌的商人,约翰知道必须高效地安排他的时间.他有N工作要 做,比如给奶牛挤奶,清洗牛棚,修理栅栏之类的. 为了高效,列出了所有工作的清单.第i分工作需要T_i单位的时间来完成,而 且必须 ...
随机推荐
- js 保留小数位数
eg: var num=3.1415926 小数位处理:num.toFixed(n) n:小数位数
- C#如何释放已经加载的图片 (转)
使用Image.FromFile取磁盘上的图片时,这个方法会锁定图片文件,而且会导致内存占用增大, 有几种方法解决: 一:将Image类转换成Bitmap类 System.Drawing.Image ...
- centos 7.0防火墙导致vagrant端口映射失败
在vagrant上部署了centos7.0后,Vagrantfile端口转发设置后,宿主机访问客户机站点还是无法访问,问题出在:centos7.0以上版本默认会安装firewalld防火墙, fire ...
- 安装ImageMagick扩展出现configure: error: not found. Please provide a path to MagickWand-config or Wand- config program
安装ImageMagick扩展报错: checking ImageMagick MagickWand API configuration program... checking Testing /u ...
- WAMP(Windows+Apache+Mysql+PHP)环境搭建
学习PHP已经有一段时间,一直没有写过关于开发环境搭建的笔记,现在补上吧,因为安装配置的步骤记得不是很清楚,借鉴了一些别人的经验,总结如下: 首先去官方网站下载各个软件,下载需要的版本: Apache ...
- __name__ == '__main__'的作用
当你打开一个.py文件时,经常会在代码的最下面看到if __name__ == '__main__':,现在就来介 绍一下它的作用. 模块是对象,并且所有的模块都有一个内置属性 __name__.一个 ...
- Python 3中套接字编程中遇到TypeError: 'str' does not support the buffer interface的解决办法
转自:http://blog.csdn.net/chuanchuan608/article/details/17915959 目前正在学习python,使用的工具为python3.2.3.发现3x版本 ...
- JSP中使用的模式——JSP+JavaBean
模式二:JSP+Servlet+JavaBean 链接地址:http://wxmimperio.coding.io/?p=189 JSP中两种模式的总结 链接地址:http://wxmimperio. ...
- BZOI 1507 [NOI2003] Editor
Background After trying to solve problem EDIT1(Editor) and being ****ed by Brainf**k, Blue Mary deci ...
- OTG线与普通USB线的区别
转自OTG线与普通USB线的区别 USB数据线是我们常见的设备,OTG线作为近年来随着手机行业的快速发展,逐步进入了我们的日常使用范围.OTG线与普通USB线的有什么区别? USB数据线用 ...