NOIP 2012 T2 国王游戏 (贪心+高精)
思路:
呃呃网上那么多题解写得都不错…..
就是高精 巨坑。。。
这里展出的是任氏高精(纯自己yy滴)
//By SiriusRen
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
int n,temp[5555],len,A[5555],ans[5555],ans_max;
char s[11],jya[11];
struct Node{
char a[11];
int alen,b;
}node[1005];
bool cmp(Node x,Node y){
int xa=0,ya=0;
for(int i=x.alen-1;~i;i--)xa=xa*10+x.a[i];
for(int i=y.alen-1;~i;i--)ya=ya*10+y.a[i];
return xa*x.b<ya*y.b;
}
int main(){
scanf("%d",&n);
scanf("%s%d",s,&node[0].b);
len=strlen(s)-1;
for(int i=0;i<=len;i++)A[i]=s[len-i]-'0';
for(int i=1;i<=n;i++){
scanf("%s%d",jya,&node[i].b);
node[i].alen=strlen(jya);
for(int j=0;j<node[i].alen;j++)
node[i].a[j]=jya[node[i].alen-j-1]-'0';
}
sort(node+1,node+1+n,cmp);
for(int i=1;i<=n;i++){
memset(temp,0,sizeof(temp));
int res=0,maxx=0;
for(int j=len;~j;j--){
res=res*10+A[j];
temp[j]=res/node[i].b;
if(temp[j])maxx=max(maxx,j);
res=res%node[i].b;
}
for(int j=5000;~j;j--)
if(ans[j]<temp[j]){
for(int j=maxx;~j;j--)
ans[j]=temp[j];
ans_max=maxx;
break;
}
else if(ans[j]>temp[j])break;
memset(temp,0,sizeof(temp));
for(int j=0;j<=len;j++)
for(int k=0;k<node[i].alen;k++)
temp[j+k]+=A[j]*node[i].a[k];
for(int j=0;j<=len+10;j++){
temp[j+1]+=temp[j]/10;
temp[j]=temp[j]%10;
if(temp[j])len=j;
}
for(int j=len;~j;j--)A[j]=temp[j];
}
for(int j=ans_max;~j;j--)printf("%d",ans[j]);
}
NOIP 2012 T2 国王游戏 (贪心+高精)的更多相关文章
- P1080 【NOIP 2012】 国王游戏[贪心+高精度]
题目来源:洛谷 题目描述 恰逢 H国国庆,国王邀请n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排成一排,国王 ...
- 国王游戏 2012年NOIP全国联赛提高组(贪心+高精)
P1080 国王游戏 题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排成 ...
- 【CodeVS 1198】【NOIP 2012】国王游戏
http://codevs.cn/problem/1198/ 推导一翻,排好序后,直接上高精度. #include<cstdio> #include<cstring> #inc ...
- [贪心][高精]P1080 国王游戏(整合)
题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排成一排,国王站在队伍的最 ...
- noip 2012 国王游戏(贪心+高精)
/* 我是不会说我考试的时候想到了正解却把金币取大看成金币求和的.... 觉得只按左右手乘积排序不太对 有反例 也可能我反例放到这个题里是错的吧 按自己的理解排的序 就是各种讨论... 假设 第i个人 ...
- luoguP1080 国王游戏 题解(NOIP2012)(贪心+高精)
luoguP1080 国王游戏 题目 #include<iostream> #include<cstdlib> #include<cstdio> #include& ...
- 矩阵取数游戏 2007年NOIP全国联赛提高组(dp+高精)
矩阵取数游戏 2007年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description [问题描述]帅帅经常跟 ...
- P1080 国王游戏 贪心 高精度
题目描述 恰逢 HH国国庆,国王邀请nn 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 nn 位大臣排成一排,国王站在队伍的 ...
- NOIP2012 DAY1 T2 国王游戏
题目描述 恰逢 H国国庆,国王邀请n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排成一排,国王站在队伍的最前面 ...
随机推荐
- hdoj--5532--Almost Sorted Array(正反LIS)
Almost Sorted Array Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Ot ...
- db file sequential read等待事件 --转载
db file sequential read db file sequential read等待事件有3个参数:file#,first block#,和block数量.在10g中,这等待事件受到用户 ...
- java格式化时间到毫秒
转自:https://blog.csdn.net/iplayvs2008/article/details/41910835 java格式化时间到毫秒: SimpleDateFormat formatt ...
- No changes detected or App 'blog' could not be found. Is it in INSTALLED_APPS?
出现该问题的原因: django没有在setting.py的配置文件中找到app内容,需要增加app的名称 E:\PycharmProjects\Mysite>python manage.py ...
- 微信开发中的序列化json问题..
微信开发平台: https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list& ...
- Flask-上传文件和访问上传的文件
1.1.上传文件和访问上传的文件 upload_file_demo.py from flask import Flask,request,render_template import os from ...
- mongo服务器异常
1.Detected unclean shutdown - /data/db/mongod.lock is not empty. 前几天把研究用的虚拟机直接关了回家过年,今天启动发现启动不了,报了个u ...
- ROS-Solidworks转URDF
前言:URDF建模很粗糙,而ros提供了支持sw转urdf的插件,可以使建模更精细化. 一.安装sw_urdf_exporter插件 sw_urdf_exporter插件网址:http://wiki. ...
- VSCode (Code) 技法
本人使用插件推荐 indent-rainbow https://marketplace.visualstudio.com/items?itemName=oderwat.indent-rainbow B ...
- linux 下vim中关于删除某段,某行,或者全部删除的命令