小红书Java后端2023-8-6笔试

news/2025/1/23 2:34:24/

小红书推荐系统

时间限制:3000MS;内存限制:589824KB

题目描述

小红书有一个推荐系统,可以根据用户搜索的关键词推荐用户希望获取的内容。现在给定小孩的搜索记录(记录是分词后的结果),我们认为当一个单词出现的次数不少于3次时。该单词为“用户期望搜索的单词“,即为关键词。请你根据小红的记录,输出小红的用户画像对应得所有关键词。

输入描述

一行字符串。仅由小写字母和空格组成。代表小红的搜索记录。

字符串长度不超过100000.

输出描述

小红所有的关键词。每行输出一个。你需要按照搜索频次从高到低输出。频次相同的,你需要按字典序升序输出。

样例输入

kou red game red ok who game red karaoke yukari kou red red nani kou can koukou ongakugame game

样例输出

red
game
kou

思路 

先使用哈希表记录每个元素出现的次序,再筛选出出现次数大于等于3的单词,然后对字典进行排序,先对出现次序进行升序排序,再根据字典序对出现次数相同的单词进行降序排序,最后添加

”reverse = True“ 属性,就可以实现对出现次数降序排序,字典序升序排序了

map = {}
s = input().split(" ")ans = {}
for i in range(len(s)):if s[i] not in map:map[s[i]] = 1else:map[s[i]] +=1for key,value in map.items():if value>=3:ans[key] = valueans = sorted(ans.items(),key=lambda x:(-x[1],x[0]),reverse=True )x = []
for i in range(len(ans)-1,-1,-1):print(ans[i][0] )

小红的分享日常

时间限制:3000MS 内存限制:589824KB

题目描述

小红书很喜欢前往小红书分享她的日常生活。已知她生活中有n个事件,分享第i个事件需要她花费ti的时间和hi的精力来编辑文章,并能获得ai的快乐值。

小红想知道,在总花费时间不超过T且总花费精力不超过H的前提下,小红最多可以获得多少快乐值?

输入描述

第一行输入一个正整数n,代表事件的数量。

第二行输入两个正整数T和H,代表时间限制和精力限制。

接下来的n行,每行输入三个正整数ti,hi,ai,代表分享第i个事件需要花费ti的时间、hi的精力,收获ai的快乐值。

1<=n<=50
1<=T,H<=500
1<=ti,hi<=30
1<=ai<=10^9

输出描述

一个整数,代表小红最多的快乐值

样例

输入

2
2 2
1 3 3
3 1 4

输出

0

说明

显然,小红无法分享任何事件

思路

背包问题,只是多了一个限制条件,定义状态dp为面对这件事的时候快乐值最大的结果。

代码

    public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int T = sc.nextInt();int H = sc.nextInt();int[] t = new int[n];int[] h = new int[n];int[] a = new int[n];for(int i=0;i<n;i++){t[i] = sc.nextInt();h[i] = sc.nextInt();a[i] = sc.nextInt();}int [][] dp = new int[T+1][H+1];for(int i=0;i<n;i++){for(int j=T;j>=t[i];j--){for(int k=H;k>=h[i];k--){dp[j][k] = Math.max(dp[j][k],dp[j-t[i]][k-h[i]] +a[i]);}}}System.out.println(dp[T][H]);}

小红的小红树

时间限制:3000MS 内存限制:589824KB

小红在刷小红书的时候看到了一颗挂着小红薯的小红树,所以小红也想种一颗小红树挂一些小红薯发小红书。

小红有一颗树,每个结点有一个权值,初始时每个节点都是白色。小红每次操作可以选择两个相邻的结点,如果它们都是白色且权值的和是质数,小红就可以选择其中一个节点染红。

小红想知道最多可以染红多少个节点?

输入描述

第一行输入一个正整数n,代表节点的数量。
第二行输入n个正整数ai,代表每个节点的权值。
接下来的n-1行,每行输入两个正整数u,v,代表节点u和节点v有一条边连接。
1<=n<=10^5
1<=ai<=10^5
1<=u,v<=n

输出描述

输出一个整数表示答案。

样例输入

3
1 2 3
1 2
1 3

样例输出

1

提示

节点1和节点2权值和为3,是质数,所以小红可以染红节点1或节点2,此时无法再染红其他节点。

思路

针对这道题,我们可以计算两个端点为素数的边的个数,这样可以通过全部测试用例,但在某些情况下会出现错误

我们在代码中通过埃拉托斯特尼筛法得到两万以内的全部素数,然后在主函数中进行筛选

代码

 public static void main(String[] args) {new algorithm().solution();}Set<Integer> primes = new HashSet<>();boolean[] st;void get_primes(){int n = 200000;for(int i=2;i<=n;i++){if(!st[i]){primes.add(i);for(int j=i+i;j<=n;j+=i) st[j]=true;}}}int[] V;void solution(){st = new boolean[200001];get_primes();Scanner sc = new Scanner(System.in);int n = sc.nextInt();V = new int[n+1];for(int i=0;i<n;i++)V[i] = sc.nextInt();int res = 0;for(int i=0;i<n-1;i++){int a = sc.nextInt();int b = sc.nextInt();if(primes.contains(a+b)) res++;}System.out.println(res);}

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

相关文章

gitui 解决 git error:Bad credentials.

问题描述 cat .git/config """ [remote "origin"]url gitgitcode.net:xxx.gitfetch refs/heads/*:refs/remotes/origin/* """ls -lh ~/.ssh/ """ -rw------- 1 z z 2.6K 8月 12 15:04 id_rsa -rw-r--r-- 1 z z 56…

【先进PID控制算法(ADRC,TD,ESO)加入永磁同步电机发电控制仿真模型研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…

云计算——存储虚拟化功能

作者简介&#xff1a;一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭&#xff1a;低头赶路&#xff0c;敬事如仪 个人主页&#xff1a;网络豆的主页​​​​​ 目录 前期回顾 前言 一.存储虚拟化功能 1.精简磁盘和空间回收 2.快照 &#xff08;1&a…

控价有什么技巧吗

设置一个价格进行管控&#xff0c;简称控价&#xff0c;品牌做控价不光是为了自身利益&#xff0c;也是为了整个行业的健康和发展&#xff0c;同时控价还能保证经销商的利润&#xff0c;以及消费者的利益。如果品牌不控价&#xff0c;不管是新品发售还是常规品的销售&#xff0…

php如何对接伪原创api

在了解伪原创api的各种应用形态之后&#xff0c;我们继续探讨智能写作背后的核心技术。需要说明的是&#xff0c;智能写作和自然语言生成、自然语言理解、知识图谱、多模算法等各类人工智能算法都有紧密的关联&#xff0c;在百度的智能写作实践中&#xff0c;常根据实际需求将多…

GaussDB数据库SQL系列-UNION UNION ALL

目录 一、前言 二、GaussDB UNION/UNION ALL 1、GaussDB UNION 操作符 2、语法定义 三、GaussDB实验示例 1、创建实验表 2、合并且除重(UNION) 3、合并不除重&#xff08;UNION ALL&#xff09; 4、合并带有WHERE子句SQL结果集&#xff08;UNION ALL&#xff09; 5、…

【Spark学习笔记】- 1Spark和Hadoop的区别

目录标题 Spark 是什么Spark and Hadoop首先从时间节点上来看:功能上来看: Spark or Hadoop Spark 是什么 Spark 是一种基于内存的快速、通用、可扩展的大数据分析计算引擎。 Spark and Hadoop 在之前的学习中&#xff0c;Hadoop 的 MapReduce 是大家广为熟知的计算框架&…

gRPC vs REST:创建API的方法比较

本文对gRPC和REST的特征和区别进行了介绍&#xff0c;这可能是当今创建API最常用的两种方法。 文章目录 一、gRPC的介绍 二、什么是REST&#xff1f; 三、什么是gRPC? 四、gRPC和REST的比较 &#xff08;1&#xff09;底层HTTP协议 &#xff08;2&#xff09;支持的数据…