4809 江哥的dp题c

 时间限制: 1 s
 空间限制: 128000 KB
 题目等级 : 黄金 Gold
 
 
 
题目描述 Description

有两个数x,y,一开始x=1,y=1.现给定一个参数N和一个数组p(p1,p2,p3,……,pN),你需要按以下规则操作:

若x≤N,则你需要选择一个正整数k,然后将x变为kx,将y变成y*px。

当x>N时,结束操作,你的得分即为y的值,求最大得分。

输入描述 Input Description

第一行一个正整数N。

接下来一行N个正整数,描述p。

输出描述 Output Description

输出一行一个整数,描述答案。

样例输入 Sample Input

10

1 2 3 4 5 6 7 8 9 10

样例输出 Sample Output

64

数据范围及提示 Data Size & Hint

k为你自己选定的一个定值。

测试点编号        数据范围

1,2,3                   N≤15

4,5,6,7              N≤50000

8,9,10               N≤10^6

分类标签 Tags 点此展开

AC代码:

#include<cstdio>
#include<cmath>
#include<iostream>
#include<iomanip>
#define ll long long
using namespace std;
inline const int read(){
register int x=,f=;
register char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-;ch=getchar();}
while(ch>=''&&ch<=''){x=(x<<)+(x<<)+ch-'';ch=getchar();}
return x*f;
}
const int N=1e6+;
ll p[N/];
double dp[N];
int n,a[N],t[N];
int s=,cnt=;
int main(){
n=read();p[]=;
for(int i=;i<=n;i++) a[i]=read();
for(int i=n;i;i--){
for(int j=i;j<=n;j+=i){
if(dp[i]<dp[j]) dp[i]=dp[j],t[i]=j;
}
dp[i]+=log(a[i]);
}
for(;s;s=t[s]){
for(int i=;i<=cnt;i++) p[i]*=(ll)a[s];
for(int i=;i<=cnt||p[i];i++){//高精度压位
p[i+]+=p[i]/,p[i]%=,cnt=max(cnt,i);
}
}
cout<<p[cnt];
for(int i=cnt-;i;i--) cout<<setfill('')<<setw()<<p[i];
return ;
}

4809 江哥的dp题c的更多相关文章

  1. 4817 江哥的dp题d

    4817 江哥的dp题d  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 已知1-N的排列P的LIS(最长上 ...

  2. 4816 江哥的dp题b

    4816 江哥的dp题b  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 给出两个1-N的随机排列A,B.若 ...

  3. 4815 江哥的dp题a

    4815 江哥的dp题a  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解       题目描述 Description 给出一个长度为N的序列A(A1,A ...

  4. codevs4817 江哥的dp题d

    4817 江哥的dp题d  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold [题目描述] Description 已知1-N的排列P的LIS(最长上升子序列)不超 ...

  5. 江哥的dp题a(codevs 4815)

    题目描述 Description 给出一个长度为N的序列A(A1,A2,A3,...,AN).现选择K个互不相同的元素,要求: 1.两两元素互不相邻 2.元素值之和最大 输入描述 Input Desc ...

  6. Codeforces Round #369 (Div. 2)---C - Coloring Trees (很妙的DP题)

    题目链接 http://codeforces.com/contest/711/problem/C Description ZS the Coder and Chris the Baboon has a ...

  7. HDU 2577 How to Type(dp题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2577 解题报告:有一个长度在100以内的字符串,并且这个字符串只有大写和小写字母组成,现在要把这些字符 ...

  8. 古韵之乞巧 题解 dp题

    [noip模拟赛1]古韵之乞巧   描述 闺女求天女,更阑意未阑. 玉庭开粉席,罗袖捧金盘. 向月穿针易,临风整线难. 不知谁得巧,明旦试相看. ——祖咏<七夕> 女子乞巧,是七夕的重头戏 ...

  9. cf1061c 普通dp题

    题解见https://blog.csdn.net/godleaf/article/details/84402128 这一类dp题是可以压缩掉一维空间的,本题枚举a1到an,枚举到ai时枚举ai的每个约 ...

随机推荐

  1. Xcode常用快捷键的使用

    熟练使用Xcode的一些快捷方式,会大大加快项目开发的速度.

  2. JSON TO NSDictionary Mac & iOS

    NSString * jsonPath=[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"Cont ...

  3. 如何退出调起多个Activity的Application?

    1.记录打开的Activity 每打开一个activity,即记录下来,需要关闭时,关闭每一个activity即可. 2.发送特定的广播 在需要结束应用时,发送一个特定广播,每个activity收到此 ...

  4. 旧项目如何切换到Entity Framework Code First

    Entity Framework Code First固然是好东西,然而如果是已经存在的旧有项目,如何简单方便的使用切换呢? 这里介绍一个VS的插件Entity Framework Power Too ...

  5. JavaScript Patterns 5.8 Chaining Pattern

    Chaining Pattern - Call methods on an object one after the other without assigning the return values ...

  6. Windows Phone 8.0 SDK Update(10322) Released

    昨天微软低调发布了WP 8 SDK的更新,甚至在Windows Phone Developer Blog上都没有提及. 从开发者的角度来看,此次更新的确没有太多需要关注的地方,因为没有添加新的API和 ...

  7. java 生成和解析二维码

    public class QRCode { /** * 解析二维码(QRCode) * @param imgPath * @return */ public static String decoder ...

  8. MySQL 调优基础(二) Linux内存管理

    进程的运行,必须使用内存.下图是Linux中进程中的内存的分布图: 其中最重要的 heap segment 和 stack segment.其它内存段基本是大小固定的.注意stack是向低地址增长的, ...

  9. Servlet/JSP-04 JSP基础

    一. JSP概述 Servlet 是 Java 程序,可以在 Java 程序内部返回一段 HTML 代码(字符串形式)到浏览器,供浏览器解释展示. JSP 是一种脚本语言,在 HTML 内部通过嵌入 ...

  10. php群发邮件,用数据库做邮件队列

    重思想,方法自己又写的,不能保证原文的都正确... Tutorial Tutorial – A tutorial for Mail_Queue Mail_Queue usage with a simp ...