HDU 4344-Mark the Rope-大数素因子分解
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 4344-Mark the Rope-大数素因子分解相关的知识,希望对你有一定的参考价值。
注意只有一个素因子的情况。
1 #include <cstdio> 2 #include <algorithm> 3 #include <cstring> 4 5 using namespace std; 6 7 typedef long long ll; 8 const int INF = 0x3f3f3f3f; 9 const int maxn = 4e3+10; 10 struct cake 11 { 12 int w,l; 13 cake(){} 14 bool operator < (const cake &b) const 15 { 16 return l > b.l; 17 } 18 }ck[maxn]; 19 20 int N,len[maxn]; 21 22 int main() 23 { 24 scanf("%d",&N); 25 26 for(int i=0;i<N;i++) 27 { 28 scanf("%d%d",&ck[i].w,&ck[i].l); 29 if(ck[i].w > ck[i].l) swap(ck[i].w,ck[i].l); 30 } 31 32 sort(ck,ck+N); 33 34 int m; 35 int answ,ansl; 36 ll ans = -INF; 37 38 for(int i=0;i<N;i++) 39 { 40 m = 0; 41 for(int j=0;j<N;j++) 42 { 43 if(ck[j].w >= ck[i].w) 44 { 45 len[m++] = ck[j].l; 46 } 47 } 48 for(int j=0;j<m;j++) 49 { 50 ll res = (ll)ck[i].w*len[j]*(j+1); 51 if(res > ans) 52 { 53 ans = res; 54 answ = ck[i].w; 55 ansl = len[j]; 56 } 57 } 58 } 59 printf("%I64d\n%d %d\n",ans,answ,ansl); 60 61 }
以上是关于HDU 4344-Mark the Rope-大数素因子分解的主要内容,如果未能解决你的问题,请参考以下文章
HDU 4006The kth great number(K大数 + 堆)
HDOJ/HDU 1133 Buy the Ticket(数论~卡特兰数~大数~)
hdu1133 Buy the Ticket (卡兰特数应用+java大数)
HDU6804:Contest of Rope Pulling——题解