备战蓝桥杯---牛客寒假训练营2VP
题挺好的,收获了许多
1.暴力枚举(许多巧妙地处理细节方法)
n是1--9,于是我们可以直接暴力,对于1注意特判开头0但N!=1,对于情报4,我们可以把a,b,c,d的所有取值枚举一遍,那么如何判断有无前导0?我们只要与10000...比即可,最后用2和3判断一下放入set中去重。
这里有一个小性质:判断是否可以被8除只要看后3位,因为前面的都乘了1000.
下面是AC代码:
#include<bits/stdc++.h>
using namespace std;
const int mod=1e9+7;
int t,n,y;
string s;
void solve(){set<int>st;if(s[0]=='0'&&n!=1){cout<<0;return;}int mi=1;for(int i=2;i<=n;i++) mi*=10;if(n==1) mi=0;for(int a=0;a<=9;a++){for(int b=0;b<=9;b++){for(int c=0;c<=9;c++){for(int d=0;d<=9;d++){if(a==b||a==c||a==d||b==c||b==d||c==d) continue;for(int _=0;_<=9;_++){int x=0;for(int j=0;j<n;j++){if(s[j]<='9'&&s[j]>='0'){x=x*10+(s[j]-'0');}else{if(s[j]=='a'){x=x*10+a;}else if(s[j]=='b'){x=x*10+b;}else if(s[j]=='c'){x=x*10+c;}else if(s[j]=='d'){x=x*10+d;}else{x=x*10+_;}}}if(x>=mi&&x<=y&&x%8==0) st.insert(x); }}}}}cout<<st.size()%mod;
}
int main(){ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>t;while(t--){cin>>n>>s>>y;solve();cout<<endl;}
}
2.思维:
我们不妨把绝对值拆开,发现它就是两个点的min的两倍,那么对于任意两个点最小dis可能是这两个点较小的2倍,也可能是绕过最小点a[1]的4倍。
于是我们sort一下,从小到大枚举每一个点的贡献即可。
下面是AC代码:
#include<bits/stdc++.h>
using namespace std;
int n,t,a[200010];
bool cmp(int a,int b){return a<b;
}
void solve(){cin>>n;for(int i=1;i<=n;i++) scanf("%d",&a[i]);sort(a+1,a+n+1,cmp);long long sum=0;for(int i=1;i<=n;i++){sum+=4ll*min(2*a[1],a[i])*(n-i);}cout<<sum;
}
int main(){cin>>t;while(t--){solve();cout<<endl;}
}
3.DP
直接按照题目要求DP会TLE,因此我们可以预先维护好每一张卡牌走1---n步的最小花费,同时注意到modn的性质,走n次一定会回到原点以此判断结尾。
dp[i][j]表示最大走i步后使聚合卡提高到j的最小代价,dp[0][0]=0,求dp[n][n-k],易得状态转移方程:
dp[i][j]=min(dp[i-1][j],dp[i-1][(j-i+n)%n]+min[i]),其中我们只用减一个i即可(因为走更多的话就不满足最大走i步的条件)
下面是AC代码:
#include<bits/stdc++.h>
using namespace std;
long long t,n,m,k,c[1110],a[1100],mins[5005],dp[5005];
bool vis[5002];
void solve(){for(int i=0;i<=n;i++) mins[i]=2e18; for(int i=0;i<=n;i++) dp[i]=2e18;for(int i=1;i<=m;i++){for(int j=1;;j++){if((a[i]*j)%n==a[i]%n&&j>1) break;int u=(a[i]*j)%n;mins[u]=min(mins[u],c[i]*j);}}dp[0]=0;for(int i=1;i<=n;i++){for(int j=0;j<=n;j++){dp[j%n]=min(dp[j%n],dp[(j-i+n)%n]+mins[i]);}}long long ww=dp[n-k];if(ww>=2e18) cout<<-1;else cout<<ww;return;
}
int main(){ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);cin>>t;while(t--){cin>>n>>m>>k;for(int i=1;i<=m;i++) cin>>a[i]>>c[i];solve();cout<<endl;}
}
相关文章:
备战蓝桥杯---牛客寒假训练营2VP
题挺好的,收获了许多 1.暴力枚举(许多巧妙地处理细节方法) n是1--9,于是我们可以直接暴力,对于1注意特判开头0但N!1,对于情报4,我们可以把a,b,c,d的所有取值枚举一遍,那么如何判断有…...
QCustomPlot-绘制X轴为日期的折线图
主要代码如下: void Widget::InitQLineXDateAddData() {customPlot new QCustomPlot(this);// 创建日期时间类型的刻度生成器QSharedPointer<QCPAxisTickerDateTime> dateTimeTicker(new QCPAxisTickerDateTime);dateTimeTicker->setDateTimeFormat(&quo…...
腾讯春招后端一面(算法篇)
前言: 哈喽大家好,前段时间在小红书和牛客上发了面试的经验贴,很多同学留言问算法的具体解法,今天就详细写个帖子回复大家。 因为csdn是写的比较详细,所以更新比较慢,大家见谅~~ 就题目而言,…...
Filebeat rpm方式安装及配置
一、使用服务器root用户、filebeat8.11.1版本,rpm安装方式进行安装 curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.11.1-x86_64.rpm sudo rpm -vi filebeat-8.11.1-x86_64.rpm 二、配置核心的采集文件、使用inputs热更方式、配置filebeat本身…...
深入挖掘C语言之——枚举
目录 1. 枚举的定义 2. 枚举常量的赋值 3. 枚举的使用示例 4. 注意事项 在C语言中,枚举(Enum)是一种用户定义的数据类型,用于定义一组具名的整型常量。枚举常常用于提高代码的可读性和可维护性,使程序更易于理解。…...
【源码阅读】EVMⅢ
参考[link](https://blog.csdn.net/weixin_43563956/article/details/127725385 大致流程如下: 编写合约 > 生成abi > 解析abi得出指令集 > 指令通过opcode来映射成操作码集 > 生成一个operation 以太坊虚拟机的工作流程: 由solidity语言编…...
.Net Core 中间件验签
文章目录 为什么是用中间件而不是筛选器?代码实现技术要点context.Request.EnableBuffering()指针问题 小结 为什么是用中间件而不是筛选器? 为什么要用中间件验签,而不是筛选器去验签? 1、根据上图我们可以看到,中间件在筛选器之…...
Elasticsearch:从 Java High Level Rest Client 切换到新的 Java API Client
作者:David Pilato 我经常在讨论中看到与 Java API 客户端使用相关的问题。 为此,我在 2019 年启动了一个 GitHub 存储库,以提供一些实际有效的代码示例并回答社区提出的问题。 从那时起,高级 Rest 客户端 (High Level Rest Clie…...
七:分布式
一、Nginx nginx安装 【1】安装pcre依赖 1.下载压缩包:wget http://downloads.sourceforge.net/project/pcre/pcre/8.37/pcre-8.37.tar.gz 2.解压压缩包:tar -xvf pcre-8.37.tar.gz 3.安装gcc:yum install gcc 4.安装gcc:yum ins…...
1-postgresql数据库高可用脚本详解
问题: pgrep -f postgres > /dev/null && echo 0 || pkill keepalived 这是什么意思 建议换成 pgrep -f postmaster > /dev/null && echo 0 || pkill keepalived 回答 这条命令是一个复合命令,包含条件执行和重定向的元素。让我们…...
【亲测】Onlyfans年龄认证怎么办?Onlyfans需要年龄验证?
1. 引言 什么是OnlyFans:OnlyFans是一种内容订阅服务,成立于2016年,允许内容创作者从用户那里获得资金,用户需要支付订阅费用才能查看他们的内容。它在多个领域受到欢迎,包括音乐、健身、摄影,以及成人内容…...
ASP.NET Core新特性
1. ASP.NET Core2.1 ASP.NET Core 2.1于2018年5月30日发布。是ASP.NET Core框架的一个重要版本,带来了许多新功能和改进。以下是ASP.NET Core 2.1中一些主要的特性: SignalR:引入了 SignalR,这是一个实时通信库,使得构…...
26-Java访问者模式 ( Visitor Pattern )
Java访问者模式 摘要实现范例 访问者模式(Visitor Pattern)使用了一个访问者类,它改变了元素类的执行算法,通过这种方式,元素的执行算法可以随着访问者改变而改变访问者模式中,元素对象已接受访问者对象&a…...
电子科技大学链时代工作室招新题C语言部分---题号G
1. 题目 问题的第一段也是非常逆天,说实话,你编不出问题背景可以不编。 这道题的大概意思就是, Pia要去坐飞机,那么行李就有限重。这时Pia想到自己带了个硬盘,众所周知,硬盘上存储的数据就是0和1的二进制序…...
体育运动直播中的智能运动跟踪和动作识别系统 - 视频分析如何协助流媒体做出实时决策
AI-Powered Streaming Vision: Transforming Real-Time Decisions with Video Analytics 原著:弗朗西斯科冈萨雷斯|斯特朗(STRONG)公司首席ML科学家 翻译:数字化营销工兵 实时视频分析通过即时处理实时视频数据&…...
Avalon总线学习
Avalon总线学习 avalon总线可以分为: Avalon clock interface Avalon reset interface Avalon Memory mapped interface Avalon iterrupt interface Avalon streaming interface Avalon tri-state conduit interface Avalon conduit interface 1、Avalon c…...
Sentinel(熔断规则)
慢调用比例 慢调用比例( SLOM_REQUEST_RATTo ):选择以慢调用比例作为阈值,需要设置允许的慢调用RT(即最大的响应时间),请求的响应时间大于该值则统计为慢调用。当单位统计时长(statIntervalMs)内请求数目大于设置的最小请求数目,…...
Hive借助java反射解决User-agent编码乱码问题
一、需求背景 在截取到浏览器user-agent,并想保存入数据库中,经查询发现展示的为编码后的结果。 现需要经过url解码过程,将解码后的结果保存进数据库,那么有几种实现方式。 二、问题解决 1、百度:url在线解码工具 …...
Linux下安装Android Studio及创建桌面快捷方式
下载 官网地址:https://developer.android.com/studio?hlzh-cn点击下载最新版本即可 安装 将下载完成后文件,进行解压,然后进入android-studio-2023.2.1.23-linux/android-studio/bin目录下,启动studio.sh即可为了更加方便的使…...
【析】一类动态车辆路径问题模型和两阶段算法
一类动态车辆路径问题模型和两阶段算法 摘要 针对一类动态车辆路径问题,分析4种主要类型动态信息对传统车辆路径问题的本质影响,将动态车辆路径问题(Dynamic Vehicle Routing Problem, DVRP)转化为多个静态的多车型开放式车辆路径问题(The Fleet Size a…...
从基础入门到学穿C++
前言知识 C简介 C是一门什么样的语言,它与C语言有着什么样的关系? C语言是结构化和模块化的语言,适合处理较小规模的程序。对于复杂的问题,规模较大的程序,需要高度的抽象和建模时,C语言则不合适。为了解…...
代码随想录算法训练营第二十四天|leetcode78、90、93题
一、leetcode第93题 class Solution { public:vector<string> restoreIpAddresses(string s) {int n s.size();vector<string> res;function<void(string, int, int)> dfs [&](string ss, int idx, int t) -> void {// 终止条件,枚举完&…...
Java学习笔记NO.20
Java流程控制 1. 用户交互 Scanner Java中的Scanner类用于获取用户输入,可以从标准输入(键盘)读取各种类型的数据。 import java.util.Scanner; public class UserInputExample { public static void main(String[] args) { Scanner sc…...
关系型数据库mysql(1)基础认知和安装
目录 一.数据库的基本概念 1.1数据 1.2表 1.3数据库 1.4 DBMS 数据库管理系统 1.4.1基本功能 1.4.2优点 1.4.3DBMS的工作模式 二.数据库的发展历史 2.1发展的三个阶段 第一代数据库 第二代数据库 第三代数据库 2.2mysql发展历史 三.主流数据库 四.关系型数据库和…...
WanAndroid(鸿蒙版)开发的第三篇
前言 DevEco Studio版本:4.0.0.600 WanAndroid的API链接:玩Android 开放API-玩Android - wanandroid.com 其他篇文章参考: 1、WanAndroid(鸿蒙版)开发的第一篇 2、WanAndroid(鸿蒙版)开发的第二篇 3、WanAndroid(鸿蒙版)开发的第三篇 …...
全国农产品价格分析预测可视化系统设计与实现
全国农产品价格分析预测可视化系统设计与实现 【摘要】在当今信息化社会,数据的可视化已成为决策和分析的重要工具。尤其是在农业领域,了解和预测农产品价格趋势对于农民、政府和相关企业都至关重要。为了满足这一需求,设计并实现了全国农产…...
堆排序(数据结构)
本期讲解堆排序的实现 —————————————————————— 1. 堆排序 堆排序即利用堆的思想来进行排序,总共分为两个步骤: 1. 建堆 • 升序:建大堆 • 降序:建小堆 2. 利用堆删除思想来进行排序. 建堆和堆删…...
使用DMA方式控制串口
本身DMA没什么问题,但是最后用GPIOB点灯,就是点不亮。 回到原来GPIO点灯程序,使用GPIOB就是不亮,替换为GPIOA就可以,简单问题总是卡得很伤。...
ModbusTCP转Profinet网关高低字节交换切换
背景:在现场设备与设备通迅之间通常涉及到从一种字节序(大端或小端)转换到另一种字节序。大端字节序是指高位字节存储在高地址处,而小端字节序是指低位字节存储在低地址处。在不动原有程序而又不想或不能添加程序下可选用ModbusTC…...
OpenvSwitch VXLAN 隧道实验
OpenvSwitch VXLAN 隧道实验 最近在了解 openstack 网络,下面基于ubuntu虚拟机安装OpenvSwitch,测试vxlan的基本配置。 节点信息: 主机名IP地址OS网卡node1192.168.95.11Ubuntu 22.04ens33node2192.168.95.12Ubuntu 22.04ens33 网卡信息&…...
博客网站建设源码/活动推广宣传方案
From 《实现一个基于XDP_eBPF的学习型网桥》 eBPF技术风靡当下,eBPF字节码正以星火燎原之势被HOOK在Linux内核中越来越多的位置,在这些HOOK点上,我们可以像编写普通应用程序一样编写内核的HOOK程序,与以往为了实现一个功能动辄pat…...
网站建设工程师培训/广告发布平台app
最近,其实时间挺多,有时我在想是不是人的心理也有周期曲线。好像我又是一段疲惫期。不管如何,我每天回到家里,抱起儿子一顿乱啃的感觉,还是让我的疲惫感都消失了。再过一个来月,儿子就4周岁了。…...
做康复医院网站/怎样能在百度上搜索到自己的店铺
HTML5 Web SQL Web SQL 数据库可以在最新版的 Safari, Chrome 和 Opera 浏览器中工作。 三个核心方法: openDatabase:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象。transaction:这个方法让我们能够控制一个事务ÿ…...
安阳企业建网站/营销策划推广
实验环境:IP地址描述192.168.5.181CentOS7系统,base源安装好了mariadb,作为ftp服务端,作为认证服务端192.168.5.121CentOS6系统,作为ftp客户端认证模块pam_mysql.so的安装需要从网上下载pam_mysql.so的源码包,pam_mysq…...
关于网站建设的论坛/优化排名推广技术网站
2023最新Redis面试题汇总1.Redis 使用场景有哪些?2.Redis 有哪些功能?3.Redis 支持哪些数据类型?4.Redis 相比 Memcached 有哪些优势?5.Redis 支持哪些淘汰策略?6.官方为什么不支持 Windows 版本?7.为什么 …...
旅游网站模板html/制作一个网页的步骤
因子分析用Python做的一个典型例子一、实验目的采用合适的数据分析方法对下面的题进行解答二、实验要求采用因子分析方法,根据48位应聘者的15项指标得分,选出6名最优秀的应聘者。三、代码importpandas as pdimportnumpy as npimportmath as mathimportnu…...