BestCoder Round #62 (div.2)(hdu5562,hdu5563,hdu5564(动态规划))

catia之车灯设计——灯玻加厚之后(单层灯玻、多层灯玻的设计) 加厚完A面后如果主机厂没有给其他的面我们该怎么做? 阅读详情

Clarke and food

题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=5562

解题思路:

可以证明从小到大一直拿,拿到不能拿为止是最优的。

所以排序一下即可。

中文题目:

问题描述
克拉克是一名人格分裂患者。某一天,克拉克变成了一个厨师,在采购食品。  
克拉克一共采购了nn个食物,每个食物有一个体积v_iv​i​​。现在克拉克有一个容量为VV背包,他想用这个背包来装尽量多的食物。请你告诉他最多能装多少食物。  
输入描述
第一行一个整数T(1 \le T \le 10)T(1≤T≤10),表示数据的组数。  
每组数据第一行是两个整数n, V(1 \le n \le 10^5, 1 \le V \le 10^9)n,V(1≤n≤10​5​​,1≤V≤10​9​​),表示克拉克的数目和背包容量。  
接下来一行有nn个正数,第ii个整数表示v_i(1 \le v_i \le 10^9)v​i​​(1≤v​i​​≤10​9​​)。  
输出描述
每组数据输出一行一个数,表示答案。

AC代码:

#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;

int a[100005];

int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        int n,V;
        scanf("%d%d",&n,&V);
        for(int i = 0; i < n; i++)
            scanf("%d",&a[i]);
        sort(a,a+n);
        int ans = 0;
        while(V > 0){
            V -= a[ans++];
        }
        printf("%d\n",ans-1);
    }
    return 0;
}

Clarke and five-pointed star

题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=5563

解题思路:

容易看出只需要判断这5个点是否在一个正五边形上。

因此我们枚举排列,然后依次判断即可。

判定方法是,五条相邻边相等,五条对角线相等。

中文题目:

问题描述
克拉克是一名人格分裂患者。某一天克拉克分裂为一个几何学习者,在研究多边形。
在研究某一个多边形的时候,克拉克发现他多次遇到判断5个点是否能组成一个五角星的问题,在这里,这5个点分别代表五角星的五个顶点(顶角上的点)。于是他跑来想你求助,让你写出一个程序快速判定。即对于给出的5个点,判断这5个点是否能组成一个五角星。
输入描述
第一行一个整数T(1 \le T \le 10)T(1≤T≤10),表示数据的组数。
每组数据有55行,每行有两个实数x_i, y_i(-10^9 \le x_i, y_i \le 10^9)x​i​​,y​i​​(−10​9​​≤x​i​​,y​i​​≤10​9​​),表示第ii个点的坐标。
输出描述
如果两个量相差小于10^{-4}10​−4​​,则认为这两个量相等。
对于每组数据,如果这55个点能组成一个五角星,则输出YesYes,否则输出NoNo。(如果55个点相同,那么也能组成一个五角星。)

AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
using namespace std;

const double eps = 1e-4;
struct node{
    double x,y;
}no[5];
double dis[5][5];

double get_dis(node a,node b){
    return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}

int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        for(int i = 0; i < 5; i++)
            scanf("%lf%lf",&no[i].x,&no[i].y);
        memset(dis,0,sizeof(dis));
        int flag = 1;
        for(int i = 0; i < 5; i++){
            for(int j = i+1; j < 5; j++){
                dis[i][j] = dis[j][i] = get_dis(no[i],no[j]);
            }
            sort(dis[i],dis[i]+5);
            if(dis[i][4]-dis[i][3] >= eps){
                flag = 0;
                break;
            }
        }
        if(flag)
            puts("Yes");
        else
            puts("No");
    }
    return 0;
}

Clarke and digits

题目链接:

http://acm.hdu.edu.cn/showproblem.php?pid=5564

解题思路:

考虑dp,令d(i, j, k)d(i,j,k)表示长度为ii第ii位为jj余数为kk的方案数,则d(1, j, j \ mod \ 7) = 1, 0 < j < 10d(1,j,j mod 7)=1,0<j<10, d(i+1, x, (k * 10+x) \ mod \ 7) += d(i, j, k)d(i+1,x,(k∗10+x) mod 7)+=d(i,j,k)。发现

转移相同,所以我们用矩阵快速幂来计算即可。题目要求前缀和,那么我们在矩阵里加一维就行了。

中文题目:

问题描述
克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在研究数字。  
他想知道在所有长度在[l, r][l,r]之间的能被77整除且相邻数位之和不为kk的正整数有多少个。  
输入描述
第一行一个整数T(1 \le T \le 5)T(1≤T≤5),表示数据的组数。  
每组数据只有一行三个整数l, r, k(1 \le l \le r \le 10^9, 0 \le k \le 18)l,r,k(1≤l≤r≤10​9​​,0≤k≤18)。  
输出描述
每组数据输出一行一个数,表示答案。由于答案太大,你只需对10^9+710​9​​+7取模即可。  

AC代码:



Outlook Express 6 (OE6) for Win7/Win8/Win10 英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。 立即下载

相关推荐

MySQL安装配置教程(超级详细)

一、 下载MySQL Mysql官网下载地址:MySQL :: Download MySQL Installer (Archived Versions) 1. 选择要安装的版本,本篇文章选择的是5.7.31版本,点击Download下载 正在上传…重新上传取消 二、 安装MySQL 1. 选择设置类型双击运行mysql-installer-community-5.7.31.0.msi 这里选择是自定义安装,所以直接选择“Custom”,点击“Next” “Developer Default”是

m0_67322837的博客 5万+

HDU 5564:Clarke and digits 收获颇多的矩阵快速幂 + 前缀和

Clarke and digits Accepts: 16 Submissions: 29 Time Limit: 5000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) 问题描述 克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在...

weixin_33681778的博客 206

别再让C盘爆红了!手把手教你将Anaconda虚拟环境迁移到其他盘(附权限问题解决)

本文详细指导如何将Anaconda虚拟环境从C盘迁移到其他驱动器,解决C盘空间不足问题。通过conda config命令和直接修改.condarc配置文件两种方法,确保环境迁移顺利进行,同时提供权限问题解决方案和长期维护技巧,帮助用户高效管理虚拟环境。

weixin_42525289的博客 421

hdu 5564 && bestcode 62 Clarke and digits

题目: Clarke and digits Accepts: 16 Submissions: 29 Time Limit: 5000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) 问题描述 克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在研究数字。 他想知道在所

chen_lin111的专栏 583

五段式S型算法笔记

又因为有 v-v0= 0.5jt通式: 所以有 vm-v0= 0.5jtm 所以有4vm-4v0= 2jtm。算法1: v=2vm-v0-0.5*jt+2jt*tm-2jtm*tm。加加速度j 自己设置 已知,vmax自己设置已知;所以有4vm-4v0= 2jtm带入算法1。

qq_36658033的博客 681

WblockCloneObjects克隆一个图纸内的实体包括块参照,同名块参照的处理

public static void HeBingTu2(double lieJu, List<string> filePaths) { Document doc = Application.DocumentManager.MdiActiveDocument; Database db = doc.Database; using (DocumentLock docLock = doc.Lock...

1108

hdu5564--Clarke and digits(数位dp+矩阵快速幂)

Clarke and digits 问题描述 克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在研究数字。 他想知道在所有长度在[l,r]之间的能被7整除且相邻数位之和不为k的正整数有多少个。 输入描述 第一行一个整数T(1≤T≤5),表示数据的组数。 每组数据只有一行三个整数l,r,k(1≤l≤r≤109,0≤k≤18) 输出描述 每组数据输出一...

weixin_30414635的博客 187

12306自动抢票系统:基于DrissionPage的智能购票实战

摘要:本文介绍了一个基于DrissionPage的12306自动抢票系统实现方案。该系统通过模拟真实用户操作,实现了车票查询、登录认证、座位选择和订单提交的全流程自动化。项目采用DrissionPage库替代传统Selenium方案,具有更简洁的API设计和更好的性能表现。核心技术包括数据包监听、动作链模拟和反爬虫应对策略,实现了高效可靠的车票抢购功能。系统包含完整的业务流程设计,从环境初始化到最终订单提交,并提供了清晰的数据展示界面。本文强调该项目仅用于技术研究,在实际使用中应严格遵守12306平台规则

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 2791

[hdu5564] Clarke and digits

问题描述 克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在研究数字。 他想知道在所有长度在[l,r][l,r][l, r]之间的能被777整除且相邻数位之和不为kkk的正整数有多少个。 输入描述 第一行一个整数T(1≤T≤5)T(1≤T≤5)T (1 ≤ T ≤ 5),表示数据的组数。 每组数据只有一行三个整数l,r,k(1≤l≤r≤10,0≤k≤18)l,r,k(1≤l≤...

zmy_wky的博客 320

【目标检测】IoU(交并比)详解及代码实现

1. IOU概述        IoU的全称为交并比(Intersection over Union),是目标检测中使用的一个概念,IoU计算的是“预测的边框”和“真实的边框”的交叠率-,即它们的交集和并集的比值。最理想情况是完全重叠,即比值为1。 2. IoU计算        IoU等于“预测的边框”和“真实的边框”之间交集和并集的比值。IoU计算如下图,B1为真实

Roaddd的博客 2万+

【NodeRed】node-red-contrib-opcua实现PLC读写

在之前的博文【Node-RED】node-red-contrib-opcua-server模块使用(1)中,我们介绍了用node-red-contrib-opcua-server模块实现OPCUA服务端的,以及二次开发的内容。本节博文中我们采用官方社区自带的node-red-contrib-opcua组件开展对OPCUA客户端的介绍,详细阐述用该组件中OpcUa-Client节点实现客户端对PLC的读写,以及实现过程中遇到的问题。由于官方社区中并没有找到该组件的介绍实例,这也是本博文编写的第1个原因。

weixin_48618536的博客 958

hdu 5564 Clarke and digits(矩阵快速幂)

题目链接:hdu 5564 Clarke and digits解题思路(i,j)表示该位为i并且取模7为j的种数。根据k构造一个70*70的矩阵代码#include <cstdio> #include <cstring> #include <algorithm>using namespace std; typedef long long ll; const int maxn = 75; const

不慌不忙、不急不躁 1278

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【HDU5564 BestCoder Round 62 (div1)B】【DP转矩阵快速幂】Clarke and digits 长度在[l,r]范围内7倍数数个数要求相邻两位不为K

#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; void fre(){freopen("c://test//input.in","r",stdin);freopen("c:

snowy_smile的博客 1671

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

hdu 5564 Clarke and digits

传送门: http://acm.hdu.edu.cn/showproblem.php?pid=5564 题意: 求长度在l到r之间,能被7整除,且相邻数位和不是k的数的个数?思路: 很明显的dp题目,需要记录的是位数,(数位和)mod7的值,以及最后一位的值。 这样状态转移方程式倒是很好写,但是 1e9*7*10复杂度太高了,所以需要用矩阵快速幂去优化!!!也是蛮好想的,定义A是状态矩阵

yp_2013的博客 536

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

2018.09.28【HDU5564】Clarke and digits(数位DP)(矩阵快速幂)

传送门 解析: 哦,这可怕的数据范围。 但是仔细想一想,只限制了位数的话,能不能给我们什么特殊性质 思路: 首先要知道动态规划暴力 做法。 设dp[i][j][k]dp[i][j][k]dp[i][j][k]表示处理到第iii位,前iii位%7余数是jjj,当前位是kkk的方案数,于是状态转移就是dp[i+1][(j∗10+x)mod&amp;nbsp;7][x]+=dp[i][j][k],1≤k,x≤...

zxyoi_dreamer的博客(不定期诈尸) 270

2018.09.27 hdu5564Clarke and digits(数位dp+矩阵快速幂)

传送门 好题啊。 我只会写l,rl,rl,r都很小的情况(然而题上并没有这种数据范围)。 但这个dp转移式子可以借鉴。 我们用f[i][j][k]f[i][j][k]f[i][j][k]表示当前在第i位,模7余j,当前位是k。 显然有f[i+1][([j∗10+l)f[i+1][([j*10+l)f[i+1][([j∗10+l)%7][l]+=f[i][j][k]7][l]+=f[i][j][k]...

苟为蒟蒻又何妨 286

hdu 5564 Clarke and digits (dp+矩阵加速)

题目:http://acm.hdu.edu.cn/showproblem.php?pid=5564 题意: 问题描述 克拉克是一名人格分裂患者。某一天,克拉克变成了一个研究人员,在研究数字。 他想知道在所有长度在[l, r][l,r]之间的能被77整除且相邻数位之和不为kk的正整数有多少个。 输入描述 第一行一个整数T(1 \le T \le 5)T(1≤T≤5),表

w20810的专栏 1153

hdu 5564 Clarke and digits (数位dp + 矩阵快速幂优化)

@(K ACMer) 题意: 求长度在[l,r][l, r] 之间,且相邻数和不为kk的能被7整除的数的个数? 知识补充: 大数取模:对一个大数取k模,有这样的性质:(k∗10+a) % mod = (k % mod∗10+a) % mod(k * 10 + a)\ \%\ mod\ = \ (k \ \%\ mod * 10+ a)\ \%\ mod所以对大数只需要

JIBANCANYANG 815

HDU5564 Clarke and digits

前置知识 \(dp[i][j][k]\)表示\(i\)长,\(mod7=j\),这个位置选了\(k\)的方案数。 \(dp[i+1][(j*10+x)mod7][x]+=dp[i][j][y];//x+y!=K​\) \(Ma.a[i][j]=1\)表示\(i\)状态->\(j\)状态可以转移 如果设\(ans=qkpow(Ma,K)\)。 则\(ans.a[i][j]\)表示走\(K\)步...

weixin_30929011的博客 164

hdu5564 Clarke and digits

传送门 矩阵优化DPDPDP。一篇讲解的DP博客 最开始想到DPDPDP如下:令dp[i][j][k]dp[i][j][k]dp[i][j][k]表示当前为第iii位,余数为jjj,最后一位为kkk的方案。假设相邻两位之和不为banbanban。 if(x+k!=ban)=&amp;amp;amp;gt;dp[i+1][(j∗10+x)%7][x]+=dp[i][j][k]if(x+k!=ban)=&amp;amp;amp;gt...

g21wcr的博客 282

Hdu 5564 Clarke and digits

Problem Description Clarke is a patient with multiple personality disorder. One day, Clarke turned into a researcher, did a research on digits. He wants to know the number of positive integers whic...

xyyxyyx的博客 301

BestCoder Round #80 (hdu5665,hdu5666,hdu5667(矩阵快速幂+费马小定理),hdu5668(中国剩余定理))

Lucky 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5665 解题思路: 中文题目: 问题描述 \ \ \ \    Vampire喜欢玄学,尤其喜欢研究幸运数字. \ \ \ \    对于一个数字集合S,定义关于S的幸运数字为无法用S中的数相加得到的最小的非负整数(每个数可以使用任意次). \ \ \ \

piaocoder 1002

HDU5142 NPY and FFT && BestCoder Round #22 1001

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5142 解题思路:BestCoder官方题解: 这个题直接模拟就行,把数表示成二进制,然后翻转一下,再倒着算出来,就行了 AC代码: #include #include using namespace std; int main() { int n,T; sc

piaocoder 938

BestCoder Round #77 (div.2)(hdu5650,hdu5651(逆元),hdu5652(二分),hdu5653(dp))

so easy 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5650 解题思路: 中文题目: 问题描述 已知一个包含 nn 个元素的正整数集合 SS,设 f(S)f(S) 为集合 SS 中所有元素的异或(XOR)的结果。 如:S = \{1, 2, 3\}S={1,2,3}, 则 f(S) = 0f(S)=0。 给出集

piaocoder 876

BestCoder Round #85 (hdu5804,hdu5805,hdu5806,hdu5807)

Price List 题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5804 解题思路: 中文题目: 问题描述 在Byteland一共有nn家商店,编号依次为11到nn。每家商店只会卖一种物品,其中第ii家商店的物品单价为v_iv​i​​。 Byteasar每天都会进行一次购物,他会在每家商店购买最多一件物品,当然他也可以选择

piaocoder 785
上一篇: Ubuntu开发环境下安装Eclipse
下一篇: 如何解决ubuntu下用wine出现“wine cannot find MFC42.dll”的问题
yphacker
博客等级 码龄12年 199粉丝 540原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值