练了一下高精度。。结果敲了这么久。。。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#define maxn 1050
using namespace std;
struct pnt
{
int x,y;
}p[maxn];
int n,a,b;
struct bign
{
int len,a[];
};
bign base,ans;
bool cmp(pnt x,pnt y)
{
return max(y.y,x.y*x.x)<max(x.y,y.x*y.y);
}
void reset()
{
ans.len=;ans.a[]=;
int ret=a;base.len=;
while (ret)
{
base.a[base.len]=ret%;
ret/=;base.len++;
}
base.len--;
}
bign operator / (bign x,int m)
{
int ret[],len=,data=;
for (int i=x.len;i>=;i--)
{
data=data*+x.a[i];
ret[++len]=data/m;data%=m;
}
int now=;while ((!ret[now]) && (now<=len)) now++;
bign y;
if (now==len+)
{
y.len=;y.a[]=;
return y;
}
y.len=len-now;
for (int i=y.len;i>=;i--)
{
y.a[i]=ret[now];
now++;
}
return y;
}
bool operator > (bign x,bign y)
{
if (x.len<y.len) return false;
if (x.len>y.len) return true;
int top=x.len;
for (int i=top;i>=;i--)
{
if (x.a[i]>y.a[i]) return true;
if (x.a[i]<y.a[i]) return false;
}
}
bign operator * (bign x,int m)
{
bign y,ans;
while (m) {y.a[y.len++]=m%;m/=;}
y.len--;
for (int i=;i<=x.len+y.len+;i++) ans.a[i]=;
for (int i=;i<=x.len;i++)
for (int j=;j<=y.len;j++)
ans.a[i+j]+=x.a[i]*y.a[j];
for (int i=;i<=x.len+y.len;i++)
{
ans.a[i+]+=ans.a[i]/;
ans.a[i]%=;
}
ans.len=x.len+y.len;
if (ans.a[x.len+y.len+]) ans.len++;
return ans;
}
int main()
{
scanf("%d",&n);
scanf("%d%d",&a,&b);
for (int i=;i<=n;i++) scanf("%d%d",&p[i].x,&p[i].y);
sort(p+,p+n+,cmp);
reset();
for (int i=;i<=n;i++)
{
bign ret=base/p[i].y;
if (ret>ans) ans=ret;
base=base*p[i].x;
}
for (int i=ans.len;i>=;i--) printf("%d",ans.a[i]);
return ;
}

vijos 1779 国王游戏的更多相关文章

  1. [noip2012]国王游戏<贪心+高精度>

    题目链接: https://vijos.org/p/1779 https://www.luogu.org/problem/show?pid=1080 http://codevs.cn/problem/ ...

  2. NOIP2012 国王游戏

    2国王游戏 (game.cpp/c/pas) [问题描述] 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数 ...

  3. 【NOIP 2012 国王游戏】 贪心+高精度

    题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右 手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排 成一排,国王站在队伍 ...

  4. Codevs 1198 国王游戏 2012年NOIP全国联赛提高组

    1198 国王游戏 2012年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description 恰逢 H 国国庆,国王邀 ...

  5. Luogu 1080 【NOIP2012】国王游戏 (贪心,高精度)

    Luogu 1080 [NOIP2012]国王游戏 (贪心,高精度) Description 恰逢H国国庆,国王邀请n位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己 ...

  6. NOIP国王游戏

    #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #inc ...

  7. AC日记——国王游戏 洛谷 P1080

    国王游戏 思路: 贪心+高精: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 1005 struct Dat ...

  8. Luogu P1080国王游戏(贪心)

    国王游戏 题目链接:国王游戏 ps:题目数据说明了要写高精度. 这个题的答案是\(a.l * a.r < b.l * b.r\)按照这个进行排序 题解中大部分只是如何证明排序是: \(a.l * ...

  9. 国王游戏 2012年NOIP全国联赛提高组(贪心+高精)

    P1080 国王游戏 题目描述 恰逢 H 国国庆,国王邀请 n 位大臣来玩一个有奖游戏.首先,他让每个大臣在左.右手上面分别写下一个整数,国王自己也在左.右手上各写一个整数.然后,让这 n 位大臣排成 ...

随机推荐

  1. 背景大图隔几秒切换(非轮播,淡入淡出)--变形金刚joy007 项目总结

    工作日想了好久,周日回家才想出来的... 图片切换(非轮播,淡入淡出) 1.切换2.停止 <html> <head> <meta content="text/h ...

  2. 用过的正则(更新ing)

    http://www.debuggex.com/   这个很好用20120912 //十六进制颜色值的正则表达式 var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6} ...

  3. Java线程(二):线程同步synchronized和volatile

    上篇通过一个简单的例子说明了线程安全与不安全,在例子中不安全的情况下输出的结果恰好是逐个递增的(其实是巧合,多运行几次,会产生不同的输出结果),为什么会产生这样的结果呢,因为建立的Count对象是线程 ...

  4. python遍历目录

    os.walk() 用元组表示(dirpath, dirnames, filenames): 第一个是根路径,dirpath为str类型: 第二个是根路径中的文件夹,dirnames为list类型: ...

  5. vs2010 ctrl+F5闪退解决方法

    设置项目的属性页中的“配置属性”->“链接器”->“系统”->“子系统”->“控制台”(即增加“/SUBSYSTEM:CONSOLE”链接选项)

  6. 集合框架,ArrayList和Vector的区别,让arrayList线程安全的几种方案

    boolean add(E e) 将指定的元素添加到此列表的尾部. void add(int index, E element) 将指定的元素插入此列表中的指定位置. boolean addAll(C ...

  7. 454. 4Sum II ——查找本质:hash最快,二分次之

    Given four lists A, B, C, D of integer values, compute how many tuples (i, j, k, l) there are such t ...

  8. 216. Combination Sum III——本质DFS

    Find all possible combinations of k numbers that add up to a number n, given that only numbers from ...

  9. 使用FIDDER 抓包构建请求

    FIDDER 是一个抓包利器,可以抓去浏览器的http请求. 工作原理是: FIDDER 作为代理. 1.在启动fidder时他自动启动服务监听8888端口.     2.启动FIDDER它会自动修改 ...

  10. 简单分析Java的HashMap.entrySet()的实现

    关于Java的HashMap.entrySet(),文档是这样描述的:这个方法返回一个Set,这个Set是HashMap的视图,对Map的操作会在Set上反映出来,反过来也是.原文是 Returns ...