蓝桥杯练习题(六)

📑前言

本文主要是【算法】——蓝桥杯练习题(六)的文章,如果有什么需要改进的地方还请大佬指出⛺️

🎬作者简介:大家好,我是听风与他🥇
☁️博客首页:CSDN主页听风与他
🌄每日一句:狠狠沉淀,顶峰相见

目录

    • 📑前言
    • 172.递增三元组
    • 99.分巧克力
    • 1443.卡片
    • 2191.卡牌
    • 1372.美丽的区间
    • 📑文章末尾

172.递增三元组


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
import java.util.Arrays;public class Main {
/*
3
1 1 1
2 2 2
3 3 3
27*/public static void main(String[] args) throws IOException {// TODO Auto-generated method stubStreamTokenizer sc = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));sc.nextToken();int n = (int)sc.nval;int a[] = new int[n];int b[] = new int[n];int c[] = new int[n];for(int i=0;i<n;i++) {sc.nextToken();a[i] = (int)sc.nval;}for(int i=0;i<n;i++) {sc.nextToken();b[i] = (int)sc.nval;}for(int i=0;i<n;i++) {sc.nextToken();c[i] = (int)sc.nval;}Arrays.sort(a);Arrays.sort(b);Arrays.sort(c);long sum = 0;int i=0,k=0;for(int j=0;j<n;j++) {while(i<n&&a[i]<b[j]) i++;while(k<n&&c[k]<=b[j]) k++;sum+=(long)i*(n-k);}System.out.println(sum);}}

99.分巧克力

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;public class Main {static int[][] a;static int k;static int n;public static void main(String[] args) throws IOException {// TODO Auto-generated method stubStreamTokenizer sc = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));sc.nextToken();n = (int)sc.nval;sc.nextToken();k = (int)sc.nval;a = new int[n][2];for(int i=0;i<n;i++) {sc.nextToken();a[i][0]=(int)sc.nval;sc.nextToken();a[i][1]=(int)sc.nval;}int l=1,r=(int)1e5;while(l<r) {int mid = (l+r+1)/2;if(check(mid)) {l = mid;}else {r = mid - 1;}}System.out.println(l);}public static boolean check(int x) {int sum=0;for(int i=0;i<n;i++) {sum+=(a[i][0]/x)*(a[i][1]/x);}if(sum<k) {return false;}return true;}}

1443.卡片


public class Main {static int a[];public static void main(String[] args) {// TODO Auto-generated method stuba =new int[10];for(int i=0;i<10;i++) {a[i] = 2021;}int ans = 1;while(f(ans)) {ans++;}System.out.println(ans-1);}public static boolean f(int n) {while(n>0) {a[n%10]--;if(a[n%10]<0) {return false;}n/=10;}return true;}
}

2191.卡牌


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;
import java.util.Scanner;public class Main {static long a[];static long b[];static int n;static long m;public static void main(String[] args) throws IOException {// TODO Auto-generated method stubStreamTokenizer sc = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));sc.nextToken();n = (int)sc.nval;sc.nextToken();m = (long)sc.nval;a = new long[ n];b = new long[ n];for(int i=0;i<n;i++) {sc.nextToken();a[i]=(long)sc.nval;}for(int i=0;i<n;i++) {sc.nextToken();b[i]=(long)sc.nval;}int l=0,r=(int)4e5;while(l<r) {//满足要求最大的int mid = (l+r+1)/2;if(check(mid)) {l = mid;}else {r = mid - 1;}}System.out.println(l);}public static boolean check(int k) {int t=0;for(int i=0;i<n;i++) {if(a[i]<k) {if(k-a[i]>b[i]) {return false;}else {t+=k-a[i];}}}if(t>m) {return false;}return true;}
}

1372.美丽的区间


import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StreamTokenizer;public class Main {/*
5 6
1 2 3 4 5
2*/public static void main(String[] args) throws IOException {// TODO Auto-generated method stubStreamTokenizer sc = new StreamTokenizer(new BufferedReader(new InputStreamReader(System.in)));sc.nextToken();int n = (int)sc.nval;sc.nextToken();int s = (int)sc.nval;int a[] = new int[n+1];for(int i=1;i<=n;i++) {sc.nextToken();a[i] = (int)sc.nval;}long sum[] = new long[n+1];for(int i=1;i<=n;i++) {sum[i] = a[i]+sum[i-1];}int min = Integer.MAX_VALUE;for(int i=1;i<=n;i++) {//固定左边界,二分右边界int l = i-1,r=n;while(l<r) {int mid = (l+r)/2;if(sum[mid]-sum[i-1]>=s) {r = mid;}else {l = mid + 1;}}if(sum[r]-sum[i-1]>=s) {min = Math.min(min, r-i+1);}}if(min==Integer.MAX_VALUE) {System.out.println(0);}else {System.out.println(min);}}}

📑文章末尾

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/342219.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

通义千问开源大模型部署教程-小白也能懂

1、基础环境 1.1 python3安装 准备好&#xff1a;python 3.10 (不要用3.8 &#xff0c;有bug) https://www.python.org/ftp/python/3.10.9/python-3.10.9-amd64.exe 安装完了之后&#xff0c;观察是否添加到path环境变量里了&#xff0c;如果安装的时候忘记勾选自动添…

六款简单的开关电源电路设计原理图详解

简单的开关电源电路图&#xff08;一&#xff09; 简单实用的开关电源电路图 调整C3和R5使振荡频率在30KHz-45KHz。输出电压需要稳压。输出电流可以达到500mA.有效功率8W、效率87%。其他没有要求就可以正常工作。 简单的开关电源电路图&#xff08;二&#xff09; 24V开关电源…

网络市场中的品牌推广:面向新一代数字原住民的挑战与机遇

随着科技的迅速发展和互联网的普及&#xff0c;我们正处在一个网络成熟期&#xff0c;一个以数字化和网络化为特征的新时代。在这个时代&#xff0c;新一代的数字原住民经营者正在崛起&#xff0c;他们依赖网络寻找商机&#xff0c;建立自己的事业。对于企业来说&#xff0c;如…

构建基于RHEL8系列(CentOS8,AlmaLinux8,RockyLinux8等)的支持63个常见模块的PHP8.1.20的RPM包

本文适用&#xff1a;rhel8系列&#xff0c;或同类系统(CentOS8,AlmaLinux8,RockyLinux8等) 文档形成时期&#xff1a;2023年 因系统版本不同&#xff0c;构建部署应略有差异&#xff0c;但本文未做细分&#xff0c;对稍有经验者应不存在明显障碍。 因软件世界之复杂和个人能力…

FridaHook(三)——AllSafe App wp

By ruanruan&#xff0c;2022/04/21 文章目录 1、不安全的日志记录2、硬编码3、pin绕过&#xff08;1&#xff09;反编译查看方法判断逻辑&#xff08;2&#xff09;hook方法A、Hook areEqual(Object,Object)B、Hook checkPin(a) &#xff08;3&#xff09;页面效果&#xff08…

C++程序员必备的面试技巧

“程序员必备的面试技巧&#xff0c;就像是编写一段完美的代码一样重要。在面试战场上&#xff0c;我们需要像忍者一样灵活&#xff0c;像侦探一样聪明&#xff0c;还要像无敌铁金刚一样坚定。只有掌握了这些技巧&#xff0c;我们才能在面试的舞台上闪耀光芒&#xff0c;成为那…

Window平台安装MongoDB

在部署前需要在官网先确定系统对应的Mongo DB版本。 本机电脑为Window10&#xff0c;所以这里以MongoDB 6.0版本。 1 在官网下载安装包 2 安装MongoDB MongoDB Compass 是一个图形界面管理工具&#xff0c;如果勾选了安装会花费长一点时间&#xff0c;可以取消掉勾选&#xff…

代码随想录算法训练营Day17|110.平衡二叉树、257. 二叉树的所有路径、 404.左叶子之和

文章目录 一、110.平衡二叉树1.递归法 二、257. 二叉树的所有路径1. 递归法 三、 404.左叶子之和1.迭代法 一、110.平衡二叉树 题目描述&#xff1a; 给定一个二叉树&#xff0c;判断它是否是高度平衡的二叉树。 本题中&#xff0c;一棵高度平衡二叉树定义为&#xff1a;一个二…

MidTool的AIGC与NFT的结合-艺术创作和版权保护的革新

在数字艺术和区块链技术的交汇点上&#xff0c;NFT&#xff08;非同质化代币&#xff09;正以其独特的方式重塑艺术品的收藏与交易。将MidTool&#xff08;https://www.aimidtool.com/&#xff09;的AIGC&#xff08;人工智能生成内容&#xff09;创作的图片转为NFT&#xff0c…

用通俗易懂的方式讲解大模型分布式训练并行技术:序列并行

近年来&#xff0c;随着Transformer、MOE架构的提出&#xff0c;使得深度学习模型轻松突破上万亿规模参数&#xff0c;传统的单机单卡模式已经无法满足超大模型进行训练的要求。因此&#xff0c;我们需要基于单机多卡、甚至是多机多卡进行分布式大模型的训练。 而利用AI集群&a…

【2023年度总结与2024展望】---23年故事不长,且听我来讲

文章目录 前言一、学习方面1.1 攥写博客1.2 学习内容1.3 参加比赛获得证书 二、生活方面2.1写周报记录生活 三、运动方面四、CSDN的鼓励五、24年展望总结 前言 时光飞逝&#xff0c;又是新的一年&#xff0c;遥想去年2023年我也同样在这个时间段参加了CSDN举办的年度总结活动&a…

慢 SQL 的优化思路

分析慢 SQL 如何定位慢 SQL 呢&#xff1f; 可以通过 slow log 来查看慢SQL&#xff0c;默认的情况下&#xff0c;MySQL 数据库是不开启慢查询日志&#xff08;slow query log&#xff09;。所以我们需要手动把它打开。 查看下慢查询日志配置&#xff0c;我们可以使用 show …