【Java版oj】day37数据库连接池、mkdir

news2024/12/25 9:18:51

目录

 一、数据库连接池

(1)原题再现

(2)问题分析

(3)完整代码

 二、mkdir

(1)原题再现

(2)问题分析

(3)完整代码


 一、数据库连接池

(1)原题再现

数据库连接池__牛客网

        Web系统通常会频繁地访问数据库,如果每次访问都创建新连接,性能会很差。为了提高性能,架构师决定复用已经创建的连接。当收到请求,并且连接池中没有剩余可用的连接时,系统会创建一个新连接,当请求处理完成时该连接会被放入连接池中,供后续请求使用。
        现在提供你处理请求的日志,请你分析一下连接池最多需要创建多少个连接。

 

输入描述:

输入包含多组数据,每组数据第一行包含一个正整数n(1≤n≤1000),表示请求的数量。 紧接着n行,每行包含一个请求编号id(A、B、C……、Z)和操作(connect或disconnect)。

 

输出描述:

对应每一组数据,输出连接池最多需要创建多少个连接。

示例1

输入

6

A connect

A disconnect

B connect

C connect

B disconnect

C disconnect
输出

2

(2)问题分析

        贪心算法,走一步看一步,如果是connect就+1,如果不是就-1,每一步都判断最大的connect数是多少。

(3)完整代码

import java.util.*;

/*
 * 数据库连接池
 */
public class Main{
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		while(sc.hasNext()) {
			int num=sc.nextInt();
			String []id=new String[num];
			String []op=new String[num];
			for(int i=0;i<num;i++) {
				id[i]=sc.next();
				op[i]=sc.next();
			}
			int max=Integer.MIN_VALUE;
			int count=0;
			for(int i=0;i<num;i++) {
				if("connect".equals(op[i])) {
					count++;
				}else {
					count--;
				}
				max=Math.max(max,count);
			}
			System.out.println(max);
		}
        sc.close();
	}
}

 二、mkdir

(1)原题再现

mkdir__牛客网

        工作中,每当要部署一台新机器的时候,就意味着有一堆目录需要创建。例如要创建目录“/usr/local/bin”,就需要此次创建“/usr”、“/usr/local”以及“/usr/local/bin”。好在,Linux下mkdir提供了强大的“-p”选项,只要一条命令“mkdir -p /usr/local/bin”就能自动创建需要的上级目录。
        现在给你一些需要创建的文件夹目录,请你帮忙生成相应的“mkdir -p”命令。

 

输入描述:

输入包含多组数据。 每组数据第一行为一个正整数n(1≤n≤1024)。 紧接着n行,每行包含一个待创建的目录名,目录名仅由数字和字母组成,长度不超过200个字符。

 

输出描述:

对应每一组数据,输出相应的、按照字典顺序排序的“mkdir -p”命令。 每组数据之后输出一个空行作为分隔。

示例1

输入

3

/a

/a/b

/a/b/c

3

/usr/local/bin

/usr/bin

/usr/local/share/bin

输出

mkdir -p /a/b/c

mkdir -p /usr/bin

mkdir -p /usr/local/bin

mkdir -p /usr/local/share/bin

 

(2)问题分析

        用Arrays.sort()方法可以直接把字符串按字典排序,一开始我的想法就是看前面的字符串在后面的能不能找到,能找到就把它设置一个特定的字符串。好像牛客给定的测试样例有点问题。

(3)完整代码

import java.util.Arrays;
import java.util.Scanner;

/*
 * mkdir
 */
public class Main {
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		while(sc.hasNext()) {
			int num=sc.nextInt();
			String []dir=new String[num];
			for(int i=0;i<num;i++) {
				dir[i]=sc.next();
			}
			Arrays.sort(dir);
//			for(int i=0;i<num;i++) {
//				for(int j=1+i;j<num;j++) {
//					if(dir[j].contains(dir[i])) {
//						dir[i]="not";
//					}
//				}
//			}
			for(int i=1;i<num;i++) {
				if(dir[i].contains(dir[i-1]) && dir[i].charAt(dir[i-1].length()) == '/'){
					dir[i-1]="not";//这样牛客才能过,但是牛客的测试样例有问题
				}
			}
			for(int i=0;i<num;i++) {
				if("not".equals(dir[i])) {
					continue;
				}
				System.out.println("mkdir -p "+dir[i]);

			}
			System.out.println();
		}
	}
}

​​


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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ChatGPT会如何改变制造业?

来源 | Smart Industry Edgenesis编译 ChatGPT最新版本的发布成为热门头条。OpenAI表示该版本的ChatGPT能够在多个专业测试中达到“人类水平”的表现&#xff0c;例如司法考试和SAT考试。不过&#xff0c;在工业领域中&#xff0c;ChatGPT能够发挥怎样的作用呢&#xff1f;Sma…

升级OpenSSH版本(安装telnet远程管理主机

目录 一.OpenSSH是什么&#xff1f; 二.升级OpenSSH版本至8.9 1.环境介绍 2.检查是否安装telnet 3.安装telnet服务 4.启动telnet服务 5.安全文件关闭或者修改(否则root无法telnet登录) 6.安装依赖包 7.备份原有SSH服务版本 8.下载OpenSSH升级所需安装包 9.删除现有…

MySQL索引失效的七大场景

文章目录 口诀初始化数据库索引失效七大场景模&#xff08;模糊查询&#xff09;型&#xff08;数据类型&#xff09;数&#xff08;函数&#xff09;或&#xff08;OR&#xff09;运&#xff08;运算&#xff09;最&#xff08;最左原则&#xff09;快&#xff08;查询数据量大…

接口自动化测试系统知识大全,你想要的全都有

目录 接口自动化测试的前景 接口自动化测试的方法 接口自动化测试怎么做 接口自动化测试工具有哪些? 接口自动化测试框架 接口自动化测试的前景 随着移动互联网、云计算和大数据等技术的不断发展&#xff0c;接口自动化测试在软件开发中的重要性越来越凸显。尤其是随着微…

typora导出PDF很慢的解决办法

Typora导出PDF文件一直卡住 以前可以导出&#xff0c;但突然导出错误 1、首先&#xff0c;查看服务中的Print Spooler是否打开&#xff0c;没有打开进行服务打开 2、打开后&#xff0c;再进行导出&#xff0c;不行的话&#xff0c;就是前面的打印进程阻塞 解决方法&#xff…

软件测试?月薪20k+?不会自动化测试的我真的很难....

做自动化测试后悔吗&#xff1f; 后悔&#xff0c;真的后悔&#xff01; 后悔没有早点学..... 虽然现在网上到处都在散播35的焦虑&#xff0c;姑且信之&#xff0c;那么反问你&#xff0c;如果你30岁了&#xff0c;那么给你5年&#xff0c;能够在某个领域成为专家呢&#xf…

计算广告(十七)

多渠道组合路径效率评价 ​ 编辑切换为居中 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; 分析背景&#xff1a; 电商归因分析通常以 last_click 为基准&#xff0c;将成交转化归功于用户完成转化前的最近一个广告系列。然而&#xff0c;在此之前&a…

java--线程池

目录 1.线程池概 2 为什么要使用线程池 1创建线程问题 2解决上面两个问题思路&#xff1a; 3线程池的好处 4线程池适合应用场景 3 线程池的构造函数参数 1.corePoolSize int 线程池核心线程大小 2.maximumPoolSize int 线程池最大线程数量 3.keepAliveTime long 空闲…

Centos elasticsearch 8.7.0 集群搭建

Install Elasticsearch with RPM | Elasticsearch Guide [8.7] | Elastic 准备了3台centos&#xff0c;ip分别是&#xff1a; 1、192.168.1.103 2、192.168.1.148 3、192.168.1.192 开始安装第1个节点 1、 rpm --import https://artifacts.elastic.co/GPG-KEY-elasticse…

快速引用网站标题链接到Markdown

JS脚本 将JS脚本添加到书签栏&#xff0c;通过调用书签栏执行快速复制网页标题和链接 合成Markdown格式的方法&#xff1a; javascript:!function(a){var b document.createElement("textarea"),c document.getSelection();(b.textContent a),document.body.ap…

【C++】STL——vector 深度剖析 及 模拟实现

文章目录 前言1. vector的介绍及使用1.1 vector的介绍1.2 vector的使用1.2.1 构造函数1.2.2 vector对象的遍历1.2.3 vector的迭代器1.2.4 reserve和resize1.2.5 insert和erase1.2.6 vector< char > 能否替代string 2. vector的模拟实现2.1 STL_vector源码浏览2.2 vector的…

网络安全-网站后台的寻找+网页JS文件信息收集

网络安全-网站后台的寻找网页JS文件信息收集 前言 一&#xff0c;我也是初学者记录的笔记 二&#xff0c;可能有错误的地方&#xff0c;请谨慎 三&#xff0c;欢迎各路大神指教 四&#xff0c;任何文章仅作为学习使用 五&#xff0c;学习网络安全知识请勿适用于违法行为 学习网…

数影周报:美联邦机构被曝数据泄露丑闻,嘀嗒狗完成数千万元融资

本周看点&#xff1a;美联邦下属机构超25万消费者隐私被泄露&#xff1b;钉钉、金山办公同日公布AI应用&#xff1b;京东全球购与宿迁市港口集团签订战略协议&#xff1b;嘀嗒狗完成数千万元Pre-A轮融资...... 数据安全那些事 美联邦机构被曝数据泄露丑闻 海外网4月20日电 据美…

DeepSORT中的卡尔曼滤波

本文是看了DeepSORT方法视频之后&#xff0c;关于其中使用的卡尔曼滤波的理解 DeepSORT视频链接 首先是视频中的一张图 预测阶段 x ^ k − A x ^ k − 1 \hat{x}_k^-A\hat{x}_{k-1} x^k−​Ax^k−1​ P k − A P k − 1 Q , P k − ∈ R 8 , 8 P_k^-AP_{k-1}Q, P_k^- \i…

Python轻量级Web框架Flask(10)——Flask进阶知识

1、Flask整体框架流程回顾&#xff1a; 视图函数把数据返回给浏览器的方法有多种&#xff0c;其中一种就是通过模板Templates。 2、Flask插件介绍&#xff1a; Flask插件可以去官网查看&#xff0c;有很多。插件安装流程&#xff1a; 1、通过pip指令在对应环境中下载插件2、在…

【Python入门】NumPy 入门知识介绍,看这一篇足矣

前言 嗨喽~大家好呀&#xff0c;这里是魔王呐 ❤ ~! 什么是 NumPy&#xff1f; NumPy 是用于处理数组的 python 库。 它还拥有在线性代数、傅立叶变换和矩阵领域中工作的函数。 NumPy 由 Travis Oliphant 于 2005 年创建。它是一个开源项目&#xff0c;你可以自由使用它。 …

SAP 性能监控工具

SAP 体系结构可能很复杂&#xff0c;因为它由许多不同的元素和多层应用程序组成。每个元素都必须以最佳方式执行&#xff0c;以确保响应迅速且可靠的服务级别。管理如此复杂的系统可能非常艰巨&#xff0c;这就是为什么使用强大的SAP监控工具绝对必要的原因。 什么是 SAP 监控 …

安装autogpt中出现的问题及安装autogpt的小白教程

ImportError: DLL load failed while importing numpy_ops: The specified module could not be found 解决方案&#xff1a;Latest supported Visual C Redistributable downloads | Microsoft Learn 安装一下这个软件即可&#xff0c; 要安装 Auto-GPT&#xff0c;请按照下…

【Operating Systems:Three Easy Pieces 操作系统导论 】 4 ~ 6 章 (进程 | 进程 API | 受限直接执行)

【读书笔记】 Operating Systems:Three Easy Pieces 操作系统导论 第四章、 抽象 &#xff1a; 进程 4.1 什么是进程 ? 操作系统为正在运行的程序提供的抽象进程可以访问的内存&#xff08;称为地址空间&#xff0c;address space&#xff09; 是该进程的一部分。进程的机器…

python+nodejs+ssm+vue 基于协同过滤的旅游推荐系统

本文首先介绍了旅游推荐的发展背景与发展现状&#xff0c;然后遵循软件常规开发流程&#xff0c;首先针对系统选取适用的语言和开发平台&#xff0c;根据需求分析制定模块并设计数据库结构&#xff0c;再根据系统总体功能模块的设计绘制系统的功能模块图&#xff0c;流程图以及…