当前位置: 首页 > news >正文

每日小练:Day2

1.乒乓球筐

题目链接:乒乓球筐__牛客网

题目描述:

这道题主要考察B盒是不是A盒的子集,我们可以通过哈希表来做

单哈希表

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);while(in.hasNext()){char[] s1=in.next().toCharArray();char[] s2=in.next().toCharArray();int[] hash=new int[26];boolean ret=true;for(int i=0;i<s1.length;i++){hash[s1[i]-'A']++;}for(int i=0;i<s2.length;i++){if(--hash[s2[i]-'A']<0){ret=false;break;}}if(ret==true){System.out.println("Yes");}else{System.out.println("No");}}}
}

 双哈希表

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);while (in.hasNext()) {char[] s1=in.next().toCharArray();char[] s2=in.next().toCharArray();int[] hash1 = new int[26];int[] hash2 = new int[26];boolean ret = true;for (int i = 0; i < s1.length; i++) {hash1[s1[i]-'A']++;}for (int i = 0; i < s2.length; i++) {hash2[s2[i]-'A']++;}for (int i = 0; i < 26; i++) {if (hash1[i] != hash2[i]) {ret = false;break;}}// 输出结果System.out.println(ret ? "Yes" : "No");}in.close(); // 关闭输入流}
}

2.组队竞赛

题目链接:组队竞赛_牛客网

import java.util.*;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int n=in.nextInt();int[] arr=new int[n*3];for(int i=0;i<n*3;i++){arr[i]=in.nextInt();} //先将数组排序Arrays.sort(arr);int count =1;//每次隔着两个数取一次,第一次取得是倒数第二个数,下标是n*3-2int pos=n*3-2;long ret=0;//求每次取出的数的和while(count++<=n){ret+=arr[pos];pos-=2;}System.out.println(ret);}}

3.删除相邻数字的最大分数(⭐)

题目链接:删除相邻数字的最大分数_牛客题霸_牛客网

题目描述:

注:使用动态规划

import java.util.Scanner;// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {static int N=(int)1e4 + 10;static int[] sum=new int[N];static int[] f=new int[N];static int[] g=new int[N];public static void main(String[] args) {Scanner in = new Scanner(System.in);int n=in.nextInt();int x=0;for(int i=0;i<n;i++){x=in.nextInt();sum[x]+=x;}for(int i=1;i<N;i++){f[i]=g[i-1]+sum[i];g[i]=Math.max(g[i-1],f[i-1]);}System.out.println(Math.max(f[N-1],g[N-1]));}
}

 

希望能对大家有所帮助!!!!

http://www.lryc.cn/news/483633.html

相关文章:

  • ubuntu 安装kafka-eagle
  • 深入理解指针
  • 自动驾驶合集(更新中)
  • Chapter 14 scoped样式以及data函数
  • Golang | Leetcode Golang题解之第557题反转字符串中的单词III
  • 区块链技术在电子政务中的应用
  • Simulink中Matlab function使用全局变量
  • WPF-控件的属性值的类型转化
  • 海思Hi3516DV300上播放G711U音频文件
  • Linux源码阅读笔记-V4L2框架基础介绍
  • 列表(list)
  • 使用Python抓取数据的实战指南
  • GIC寄存器介绍
  • c++实现B树(下)
  • 外星人入侵
  • 【数据仓库】hbase的安装与简单操作
  • 为什么RNN(循环神经网络)存在梯度消失和梯度爆炸?
  • 【数据库】数据库迁移的注意事项有哪些?
  • MQTT协议解析 : 物联网领域的最佳选择
  • pycharm中from[本地包]import文件/模块出现问题(最最最全方法!)
  • MongoDB在现代Web开发中的应用
  • Python Bokeh 数据可视化教程
  • (一)<江科大STM32>——软件环境搭建+新建工程步骤
  • 内存大小的单位转换
  • 如何在 Spring MVC 中使用 `@PostMapping`? 如何在 Spring MVC 中使用 `@PutMapping`?
  • AIGC Agent(智能体)应用开发高级工程师实战培训 —— 线上8周系统教学课程学习路线图
  • GDSC、CTRP数据库学习
  • 【嵌入式】ESP32开发(一)ESP-IDF概述
  • 最新6.7分非肿瘤纯生信,使用机器学习筛选慢阻肺中的关键基因。机器学习在非肿瘤生信文章中正火,可重复!
  • vue 提交表单抹除字段为空的数据