Java练习题2021-4

news2024/9/24 1:27:28

"某游戏公司设计了一个奖励活动,给N个用户(1≤N≤10^7)连续编号为1到N,依据用户的编号S发放奖励。

发放奖励规则为:
公司随机设定三个非零正整数x,y,z。
如果S同时是x、y的倍数,奖励2张卡片;
如果S同时是y、z的倍数,奖励4张卡片;
如果S同时是x、z的倍数,奖励8张卡片;
如果S同时是x,y,z的倍数奖励10张卡片;
其他奖励1张卡片;
以上奖励不能同时享受。满足多个奖励条件时,以最高奖励为准。

求任意连续的L个用户,使得这L个用户得到的奖励总和最多,输出奖励总和的值。


输入说明:第一行,输入N,L,以空格隔开;(1≤L≤N≤10^7)
第二行,输入x,y,z,以空格隔开;(1≤x,y,z≤L)
输出说明:符合条件的连续L个用户的奖励总和的最大值。
输入样例:40 7
3 5 2
输出样例:24"

注释代码过多可以自行删除

package _2021Ti;

import javax.persistence.criteria.CriteriaBuilder;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Scanner;

public class Test4 {
    public static void main(String[] args) {
        List<Integer> scoreList = new ArrayList<>();
        Scanner sc = new Scanner(System.in);
        // 即代表N个用户 也代表 编号的结束   , 和L
        String N_L = sc.nextLine();
        String[] s1 = N_L.split(" ");



        // x , y , z
        String xyz = sc.nextLine();
        String[] s2 = xyz.split(" ");

        //例如 N = 20 七个用户 编号就是 1-20
        // 假设 设定  3  5  2
        // 奖励根据 用户编号是否为 xyz 的倍数
        //倍数就是 对几倍求余 % ==0
        //假设L = 7 就是输出任意连续七个用户
        // 这七个用户奖励和是最多的
        // 输出奖励和总是

     //   int jiangLihe = 0;



//        for (int i = 1 ; i <= Integer.valueOf(s1[0]) ; i++){
//            //找出最牛的一组编号 都是给 10张牌的
//            if (i % Integer.valueOf(s2[0]) == 0 && i % Integer.valueOf(s2[1]) == 0 && i % Integer.valueOf(s2[2]) == 0 ){
//                List<Integer> firstList = new ArrayList<>();
//                firstList.add(i);
//            }
//            //找出第二牛的 给8个牌 x 和 z 倍数
//            if (i % Integer.valueOf(s2[0]) == 0 && i % Integer.valueOf(s2[2]) == 0 ){
//                List<Integer> secondList = new ArrayList<>();
//                secondList.add(i);
//            }
//            // 第三 y z 给 4 牌
//            if (i % Integer.valueOf(s2[1]) == 0 && i % Integer.valueOf(s2[2]) == 0){
//                List<Integer> thirdList = new ArrayList<>();
//                thirdList.add(i);
//            }
//
//            // 第四大 x y 的倍数
//            if (i % Integer.valueOf(s2[0]) == 0 && i % Integer.valueOf(s2[1]) == 0){
//                List<Integer> fourthList = new ArrayList<>();
//                fourthList.add(i);
//            }
//        }

        // 想循环遍历 因为是连续的L个用户
        //外层循环为判断总循环次数 假设药连续的L =3个用户  123 234 345 456 就会有这几种
        // 假设输入 40 用户 7 个一组
        //              33                  40 - 7 = 33
            for (int j = 1; j <= Integer.parseInt(s1[0]) - (Integer.parseInt(s1[1]) -1) ; j++) {
                //总分
                int score = 0;
               // 控制次数
                int i=1;
                // 控制开始数字
                int s = j;
                //这层想 输出循环编号
                //                      7
                    while( i <= Integer.parseInt(s1[1])){

                      //  System.out.print(s);

                        if (s % Integer.valueOf(s2[0]) == 0 && s % Integer.valueOf(s2[1]) == 0 && s % Integer.valueOf(s2[2]) == 0 ) {
                            score += 10;
                        } else  if (s % Integer.valueOf(s2[0]) == 0 && s % Integer.valueOf(s2[2]) == 0 ){
                            score += 8;
                        }else if (s % Integer.valueOf(s2[1]) == 0 && s % Integer.valueOf(s2[2]) == 0){
                            score += 4;
                        }else if (s % Integer.valueOf(s2[0]) == 0 && s % Integer.valueOf(s2[1]) == 0){
                            score +=2;
                        }else {
                            score += 1 ;
                        }
                        s++;
                        i++;
                    }
                    scoreList.add(score);
              //  System.out.println();
            }
        Collections.sort(scoreList);


        System.out.println(scoreList.get(scoreList.size() -1));


    }
}

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

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

相关文章

QCI利用量子计算为飞行汽车提供优化飞行路径和改进设计的功能

​&#xff08;图片来源&#xff1a;网络&#xff09; 长期以来&#xff0c;飞行汽车和量子计算机一直是“未来技术”的简写&#xff0c;它们将彻底改变交通世界。预计到2032年&#xff0c;量子计算的市场价值将达到1700亿美元&#xff0c;当前有很多实际用例已经证明了它的价…

如何用 Zabbix 监控 Radius 服务?

网管小贾 / sysadm.cc Radius 对于搞系统的小伙伴们来说应该并不陌生&#xff0c;它是提供身份认证的服务程序。 Radius 应用广泛&#xff0c;最简单的场景之一就是无线连接&#xff0c;使用用户名密码或者证书等方式通过它的验证后无线网络连接就可以建立起来。 如此重要的一…

1496. 判断路径是否相交

1496. 判断路径是否相交 java代码&#xff1a; class Solution {public boolean isPathCrossing(String path) {int x 0;int y 0;HashSet<String> hashSet new HashSet<>();hashSet.add("0-0");for (int i 0; i < path.length(); i) {switch (pa…

Vue-cli 搭建 SPA 项目,Vue 项目结构说明,开发示例,以及如何修改端口号,install 命令中的 -g,-S,-D 参数,嵌套路由,package.json 详解

目录 1. vue-cli安装 1.1 安装前提 1.2 什么是vue-cli 1.3 安装vue-cli 2. 使用vue-cli构建项目 2.1 使用脚手架创建项目骨架 2.2 到新建项目目录&#xff0c;安装需要的模块 2.3 如何修改端口号 2.4 添加element-ui模块 2.5 package.json详解 3. install命令中的-g…

FLStudio21完整版编曲软件多少钱?要不要购买

水果&#xff0c;全称Fruity Loop Studio&#xff0c;简称FL Studio。是一款全能的音乐制作软件&#xff0c;经过二十多年的演化更迭&#xff0c;其各项功能非常的先进。其开创性的Pat\song模式&#xff0c;也为初学者的学习提供了便利。那么水果音乐制作软件需要多少钱呢&…

修复VS2015没有代码提示的问题【已解决】

问题描述 在Visual Studio 中编写代码时&#xff0c;发现使用库函数的时候&#xff0c;在类对象后输入点后&#xff0c;并没有出现类对应的成员信息的提示。 解决过程 1&#xff09;方法1&#xff1a; 百度“vs 没有代码提示”&#xff0c;搜索解决方案。 方案1&#xff1…

高级路由配置

目录 路由协议认证 Ripv2的认证配置 OSPF认证 BGP认证 OSPF特殊区域 BGP的选路规则 路由策略&#xff08;route-policy和filter-policy&#xff09; IP-Prefix List:前缀列表 Filter-Policy 路由引入&#xff08;import-route&#xff09; Filter-policy和route-pol…

『 基础算法题解 』之双指针(下)

文章目录 和为S的两个数题目解析算法原理代码 三数之和题目解析算法原理代码 四数之和题目解析算法原理代码 和为S的两个数 题目解析 【题目链接】 该题目的原题为和为s的两个数: 即给定一组升序数据(数组price),并给出一个变量target,要求找出和为target的两个数; 算法原理…

第4关:书籍排序

题目&#xff1a; C&C结构体 (educoder.net) 思路&#xff1a; 1.字符串字典序排序---> 利用string.h里面的strcmp&#xff0c;由其返回值确定两字符串大小。&#xff08;pstrcmp(a,b)&#xff0c;若p>1&#xff0c;则a字典序大于b。&#xff09; 2.当不能定义字…

Java练习题2021-1

"从大于等于N的正整数里找到一个最小的数M&#xff0c;使之满足&#xff1a; M和M的逆序数&#xff08;如1230的逆序数为321&#xff09;的差的绝对值为一个[100000,200000]区间内的值。 输入说明&#xff1a;起始数字N&#xff1b; 输出说明&#xff1a;找到的第一个符合…

Java实现Excel导入和导出,看这一篇就够了(珍藏版2.0)

1. 前言 两年前&#xff0c;我发表了一篇自己基于POI实现的工具类 Java实现Excel导入和导出&#xff0c;看这一篇就够了(珍藏版)&#xff0c;也就是1.0版本&#xff0c;受到了不少粉丝和朋友喜欢&#xff0c;谢谢大家认可。在这两年多的时间里&#xff0c;经过粉丝们的建议&am…

0基础学习PyFlink——用户自定义函数之UDTAF

大纲 UDTAFTableAggregateFunction的实现累加器定义创建累加 返回类型计算 完整代码 在前面几篇文章中&#xff0c;我们分别介绍了UDF、UDTF和UDAF这三种用户自定义函数。本节我们将介绍最后一种函数&#xff1a;UDTAF——用户自定义表值聚合函数。 UDTAF UDTAF函数即具备了…

归一化一维时序信号,针对上下幅值波动不均问题

目的&#xff1a;如下图&#xff0c;信号上包络和下包络都有无规律的起伏&#xff0c;如何进行有效归一化&#xff0c;步骤如下&#xff1a; 步骤1. 信号初步归一化 data mapminmax(data,-1,1); 步骤2. 希尔伯特变换获得该时序信号的包络 z hilbert(data);figure;plot(data…

【VUE】ArcoDesign之自定义主题样式和命名空间

前言 Arco Design是什么&#xff1f; Arco Design 是由字节跳动推出的企业级产品的完整设计和开发解决方案前端组件库 官网地址&#xff1a;https://arco.design/同时也提供了一套开箱即用的中后台前端解决方案&#xff1a;Arco Design Pro(https://pro.arco.design/) Arco De…

基于SSM的高校勤工助学系统

基于SSM的高校勤工助学系统的设计与实现~ 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringSpringMVCMyBatis工具&#xff1a;IDEA/Ecilpse、Navicat、Maven 系统展示 主页 管理员界面 摘要 基于SSM&#xff08;Spring、SpringMVC、MyBatis&#xff…

560. 和为 K 的子数组(前缀和 + 哈希表)

这道题的思路就是&#xff1a; 前缀和的差值可以表示一个区间内的元素的总和。 所以index1处的前缀和如果为sum&#xff0c;那么前面只要出现过 k - sum 的前缀和就表示&#xff0c;有和为k的子数组存在。 因为&#xff0c;sum - &#xff08;sum - k&#xff09; k class Sol…

ATFX汇市:美国9月PCE数据来袭,高通胀问题或已不构成威胁

ATFX汇市&#xff1a;今日20:30&#xff0c;美国商务部将公布9月核心PCE物价指数年率&#xff0c;前值为3.9%&#xff0c;金融机构预期为3.7%&#xff0c;预期将出现小幅下降。核心PCE数据与核心CPI数据的走势共振性较强&#xff0c;9月份核心CPI数据显示&#xff0c;最新值4.1…

【机器学习可解释性】3.部分依赖图

机器学习可解释性 1.模型洞察的价值2.特征重要性排列3.部分依赖图4.SHAP Value5.SHAP Value 高级使用 正文 每个特征怎么样影响预测结果&#xff1f; 部分依赖图 Partial Dependence Plots 虽然特征重要性显示了哪些变量对预测影响最大&#xff0c;但部分依赖图显示了特征如…

CorelDRAW和AI哪个更好用?

设计软件市场中&#xff0c;CorelDRAW和Adobe Illustrator&#xff08;简称AI&#xff09;无疑是两大重量级选手。它们各自拥有庞大的用户群和丰富的功能&#xff0c;但究竟哪一个更好用&#xff1f;本文将从多个角度出发&#xff0c;对这两款软件进行全面而深入的比较&#xf…

mysql基本操作命令

1、数据库的分类 mysql&#xff1a;关系型数据库 redis&#xff1a;非关系型数据库 关系型数据库&#xff1a;存储数据的结构是一个二维表格 表&#xff1a;行 列 行&#xff1a;记录&#xff0c;用来描述一个对象的信息 列&#xff1a;字段&#xff0c;用来描述对象的一个…