「洛谷P1043」数字游戏

日后再写

代码

  1. /*#!/bin/sh
  2. dir=$GEDIT_CURRENT_DOCUMENT_DIR
  3. name=$GEDIT_CURRENT_DOCUMENT_NAME
  4. pre=${name%.*}
  5. g++ -O2 $dir/$name -o $pre -g -Wall -std=c++11
  6. if test $? -eq 0; then
  7. gnome-terminal -x bash -c "time $dir/$pre;echo;read;"
  8. fi*/
  9. #include<cstdio>
  10. #include<iostream>
  11. #include<algorithm>
  12. #include<cstring>
  13. #include<cmath>
  14. using namespace std;
  15. const int maxn=1e2+5,INF=0x3f3f3f3f,mol=10;
  16. int n,m,f[maxn][maxn][12],a[maxn],sum[maxn][maxn],ans1,ans2=INF,g[maxn][maxn][12];
  17. inline int read(){
  18. int s=0,w=1;
  19. char ch=getchar();
  20. while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
  21. while(ch>='0'&&ch<='9')s=s*10+ch-'0',ch=getchar();
  22. return s*w;
  23. }
  24. int mod(int a){
  25. return ((a%10)+10)%10;
  26. }
  27. int main(){
  28. freopen("a.in","r",stdin);
  29. n=read();m=read();
  30. for(int i=1;i<=n;i++)a[i]=a[i+n]=read();
  31. for(int i=1;i<=n*2;i++)a[i]+=a[i-1];
  32. for(int i=1;i<=n*2;i++){
  33. for(int j=i;j<=2*n;j++){
  34. g[i][j][1]=f[i][j][1]=mod(a[j]-a[i-1]);
  35. }
  36. }
  37. for(int d=2;d<=m;d++)
  38. for(int i=1;i<=2*n;i++)
  39. for(int j=i+d-1;j<=2*n;j++)
  40. g[i][j][d]=INF;
  41. for(int d=2;d<=m;d++){
  42. for(int i=1;i<=2*n;i++){
  43. for(int j=i+d-1;j<=2*n;j++){
  44. for(int k=i+d-2;k<j;k++){
  45. f[i][j][d]=max(f[i][j][d],f[i][k][d-1]*mod(a[j]-a[k]));
  46. g[i][j][d]=min(g[i][j][d],g[i][k][d-1]*mod(a[j]-a[k]));
  47. }
  48. }
  49. }
  50. }
  51. for(int i=1;i<=n;i++){
  52. ans1=max(ans1,f[i][i+n-1][m]);
  53. ans2=min(ans2,g[i][i+n-1][m]);
  54. }
  55. cout<<ans2<<endl<<ans1;
  56. }

「区间DP」「洛谷P1043」数字游戏的更多相关文章

  1. 区间dp 能量项链 洛谷p1063

    题目大意:如果前一颗能量珠的头标记为m,尾标记为r,后一颗能量珠的头标记为r,尾标记为n,则聚合后释放的能量为 (Mars单位),新产生的珠子的头标记为m,尾标记为n. 需要时,Mars人就用吸盘夹住 ...

  2. 洛谷P1274-魔术数字游戏

    Problem 洛谷P1274-魔术数字游戏 Accept: 118    Submit: 243Time Limit: 1000 mSec    Memory Limit : 128MB Probl ...

  3. 洛谷P1288 取数游戏II(博弈)

    洛谷P1288 取数游戏II 先手必胜的条件需要满足如下中至少 \(1\) 条: 从初始位置向左走到第一个 \(0\) 的位置,经过边的数目为偶数(包含 \(0\) 这条边). 从初始位置向右走到第一 ...

  4. 「区间DP」「洛谷P3205」「 [HNOI2010]」合唱队

    洛谷P3205 [HNOI2010]合唱队 题目: 题目描述 为了在即将到来的晚会上有更好的演出效果,作为 A 合唱队负责人的小 A 需要将合唱队的人根据他们的身高排出一个队形.假定合唱队一共 n 个 ...

  5. 「区间DP」「洛谷PP3146 」[USACO16OPEN]248 G

    [USACO16OPEN]248 G 题目: 题目描述 Bessie likes downloading games to play on her cell phone, even though sh ...

  6. 「洛谷5017」「NOIP2018」摆渡车【DP,经典好题】

    前言 在考场被这个题搞自闭了,那个时候自己是真的太菜了.qwq 现在水平稍微高了一点,就过来切一下这一道\(DP\)经典好题. 附加一个题目链接:[洛谷] 正文 虽然题目非常的简短,但是解法有很多. ...

  7. Solution -「APIO 2016」「洛谷 P3643」划艇

    \(\mathcal{Description}\)   Link & 双倍经验.   给定 \(n\) 个区间 \([a_i,b_i)\)(注意原题是闭区间,这里只为方便后文描述),求 \(\ ...

  8. 「洛谷3870」「TJOI2009」开关【线段树】

    题目链接 [洛谷] 题解 来做一下水题来掩饰ZJOI2019考炸的心情QwQ. 很明显可以线段树. 维护两个值,\(Lazy\)懒标记表示当前区间是否需要翻转,\(s\)表示区间还有多少灯是亮着的. ...

  9. 「洛谷5283」「LOJ3048」「十二省联考2019」异或粽子【可持久化01trie+优先队列】

    题目链接 [洛谷传送门] [LOJ传送门] 题目大意 让你求区间异或和前\(k\)大的异或和的和. 正解 这道题目是Blue sky大佬教我做的(祝贺bluesky大佬进HA省A队) 我们做过某一些题 ...

随机推荐

  1. 8、react 高阶组件

    1.高阶组件:封装 高阶组件使用得是react得一种模式,增强现有组件得功能 一个高阶组件就是一个函数,这个函数接收得是组件类作为参数得,并且返回得是一个新组件,再返回得新组件中有输入参数组件不具备得 ...

  2. 面试官突然问我MySQL存储过程,我竟然连基础都不会!(详细)

    所有知识体系文章,GitHub已收录,欢迎Star!再次感谢,愿你早日进入大厂! GitHub地址: https://github.com/Ziphtracks/JavaLearningmanual ...

  3. 玩转华为物联网IoTDA服务系列三-自动售货机销售分析场景示例

    场景简介 通过收集自动售货机系统的销售数据,EI数据分析售货销量状况. 该场景主要描述的是设备可以通过MQTT协议与物联网平台进行交互,应用侧可以到物联网平台订阅设备侧变化的通知,用户可以在控制台或通 ...

  4. 关于cronExpression表达式

    spring 定时任务设置,关于cronExpression表达式: 字段 允许值 允许的特殊字符 秒 0-59 , - * / 分 0-59 , - * / 小时 0-23 , - * / 日期 1 ...

  5. ASP.NET Core Blazor WebAssembly 之 .NET JavaScript互调

    Blazor WebAssembly可以在浏览器上跑C#代码,但是很多时候显然还是需要跟JavaScript打交道.比如操作dom,当然跟angular.vue一样不提倡直接操作dom:比如浏览器的后 ...

  6. EAT表

    0X0 EAT表 在windows系统中,"库"是为了方便其他程序调用而集中包含相关的函数的文件(dll,sys).win32 API是最具有代表性的库. EAT是一种核心机制,它 ...

  7. [noi.ac省选模拟赛]第10场题解集合

    题目 比赛界面. T1 不难想到,对于一个与\(k\)根棍子连接的轨道,我们可以将它拆分成\(k+1\)个点,表示这条轨道不同的\(k+1\)段. 那么,棍子就成为了点与点之间的边.可以发现,按照棍子 ...

  8. numpy中的max和maximum

    numpy科学计算包中有两个函数np.max()和np.maximum(),他们的功能截然不同.简单而言即前者作用于ndarray对象,求的是它自身的最大.而后者是一个数学上的取$\max$的效果,它 ...

  9. 使用numpy生成二维正态分布

    参考资料: https://www.zhihu.com/question/39823283?sort=created https://www.zhihu.com/question/288946037/ ...

  10. yii2.0数据库操作

    User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的一条数据(举个例子): User::find()->w ...