第十三届蓝桥杯大赛软件赛省赛【Java 大学B 组】试题D: 最少刷题数

1 import java.util.ArrayList;
2 import java.util.Scanner;
3
4 public class Main {
5 public static void main(String args[]) {
6 // System.out.println("请输入一个正整数N");
7 Scanner sc = new Scanner(System.in); //初始化Scanner对象
8 int numN=sc.nextInt(); //输入
9 ArrayList myNum= new ArrayList();
10 ArrayList res= new ArrayList();
11 // System.out.printf("依次输入%d个整数\n",numN);
12 for (int i = 0;i<numN ;i++ ) {
13 int tempNum=sc.nextInt();
14 myNum.add(tempNum);
15 res.add(tempNum); //保存排序之前的数据
16 }
17 // System.out.println("排序之前的数据:"+myNum.toString()+res.toString());
18 if(numN%2==0) {
19 // System.out.println("偶数");
20 //从小到大排序:
21 int tempNum=0;
22 for(int i=0;i<numN;i++) {
23 for (int j=i+1;j<numN;j++) {
24 int i_num=(int) myNum.get(i);
25 int j_num=(int) myNum.get(j);
26 if(i_num>j_num) {
27 tempNum=i_num;
28 myNum.set(i, j_num);
29 myNum.set(j, tempNum);
30 }
31 }
32 }
33 // System.out.println("排序之后的数据:"+myNum.toString()+res.toString());
34 // System.out.println(myNum.toString());
35 //开始计算 结果保存在res数组中 下面是偶数情况:
36 for (int i=0;i<numN ; i++)
37 {
38 int zwNum=(int) myNum.get(numN/2);
39 int resTempNum=(int) res.get(i); //保存当前数据
40 if((resTempNum==zwNum) || (resTempNum>zwNum)) {
41 res.set(i, 0);
42 }else {
43 res.set(i, zwNum-resTempNum+1);
44 }
45 }
46 }else {
47 //----------------------------------------------------------------------
48 // System.out.println("奇数");
49 //从小到大排序:
50 int tempNum=0;
51 for(int i=0;i<numN;i++) {
52 for (int j=i+1;j<numN;j++) {
53 int i_num=(int) myNum.get(i);
54 int j_num=(int) myNum.get(j);
55 if(i_num>j_num) {
56 tempNum=i_num;
57 myNum.set(i, j_num);
58 myNum.set(j, tempNum);
59 }
60 }
61 }
62 // System.out.println("排序之后的数据:"+myNum.toString()+res.toString());
63 //开始计算 结果保存在res数组中 下面是奇数情况:
64 for (int i=0;i<numN ; i++)
65 {
66 int zwNum=(int) myNum.get(numN/2);
67 int resTempNum=(int) res.get(i); //保存当前数据
68 if((resTempNum==zwNum) || (resTempNum>zwNum)) {
69 res.set(i, 0);
70 }else {
71 res.set(i, zwNum-resTempNum+1);
72 }
73 }
74 }
75 //输出结果
76 System.out.println(res.toString());
77 }
78 }


第十三届蓝桥杯大赛软件赛省赛【Java 大学B 组】试题D: 最少刷题数的更多相关文章
- 2019 第十届蓝桥杯大赛软件类省赛 Java A组 题解
2019 第十届蓝桥杯大赛软件类省赛 Java A组 试题A 题解 题目最后一句贴心的提示选手应该使用 long (C/C++ 应该使用 long long). 本题思路很直白,两重循环.外层 ...
- 第十届蓝桥杯大赛软件类省赛C/C++研究生组 试题I:灵能传输
在游戏<星际争霸 II>中,高阶圣堂武士作为星灵的重要 AOE 单位,在游戏的中后期发挥着重要的作用,其技能"灵能风暴"可以消耗大量的灵能对一片区域内的敌军造成毁灭性的 ...
- 2020第十一届蓝桥杯大赛软件类国赛题目 C/C++ B 组
试题 A: 美丽的 2 本题总分:5 分 问题描述:在公元 1 年到公元 2020 年(包含)中,有多少个年份的数位中包含数字 2? #include <stdio.h> #include ...
- 第七届蓝桥杯大赛个人赛决赛(软件类C语言B组)第一题:一步之遥
这题好多人用爆搜/bfs来做,然而这题可用exgcd(扩展欧几里得)做,而且很简便. 先附原题: 一步之遥 从昏迷中醒来,小明发现自己被关在X星球的废矿车里. 矿车停在平直的废弃的轨道上. 他的面 ...
- 第九届蓝桥杯大赛个人赛决赛(软件类)真题Java
更新中.......... 同一年的题解:https://www.cnblogs.com/dgwblog/p/10111903.html 01 结果填空 (满分11分) 标题:年龄问题 s夫人一向 ...
- 第十三届蓝桥杯省赛C/C++ B组
@(第十三届蓝桥杯省赛C/C++B组) A顺子日期 答案是1478 B顺子日期 答案14(如果012算的话) C刷题统计 数据范围1e18,所以不能直接暴力,先取余,再暴力剩下的 #include&l ...
- 纸张尺寸【第十三届蓝桥杯省赛C++C组】
纸张尺寸 在 ISO 国际标准中定义了 \(A0\) 纸张的大小为 \(1189mm×841mm\),将 \(A0\) 纸沿长边对折后为 \(A1\) 纸,大小为 \(841mm×594mm\) ,在 ...
- 数位排序【第十三届蓝桥杯省赛C++C组】
数位排序 小蓝对一个数的数位之和很感兴趣,今天他要按照数位之和给数排序. 当两个数各个数位之和不同时,将数位和较小的排在前面,当数位之和相等时,将数值小的排在前面. 例如,\(2022\) 排在 \( ...
- 求和【第十三届蓝桥杯省赛C++A/C组 , 第十三届蓝桥杯省赛JAVAA组】
求和 给定 \(n\) 个整数 \(a1,a2,⋅⋅⋅,an\),求它们两两相乘再相加的和,即 \(S=a1⋅a2+a1⋅a3+⋅⋅⋅+a1⋅an+a2⋅a3+⋅⋅⋅+an−2⋅an−1+an−2⋅a ...
- 2022年4月第十三届蓝桥杯省赛C组C语言 习题解析(每日一道)
本题总分:5 分[问题描述]小蓝要把一个字符串中的字母按其在字母表中的顺序排列.LANQIAO 排列后为 AAILNOQ.//用的冒泡排序 https://blog.csdn.net/superman ...
随机推荐
- 使用docker stack方式部署web集群
如何部署swarm集群,请参考: https://blog.csdn.net/IndexMan/article/details/102713777 创建文件夹 mkdir -p /opt/docker ...
- C++ 多线程的错误和如何避免(14)
在 C++11 中,不要将 volatile 用于线程,仅限于 MMIO(内存映射) 简单的回答, 在声明变量类型之前添加 "volatile" 关键字不会使对该变量有任何方式的原 ...
- vim创建sh文件自动生成头信息
>>> vim /etc/vimrc 或 vim ~/.vimrc " 这几个加不加都行 set tabstop=4 set softtabstop=4 set shift ...
- python中partial用法
应用 典型的,函数在执行时,要带上所有必要的参数进行调用.然后,有时参数可以在函数被调用之前提前获知.这种情况下,一个函数有一个或多个参数预先就能用上,以便函数能用更少的参数进行调用. 示例pyqt5 ...
- 矩池云快速安装torch-sparse、torch-geometric等包
租用机器,按自己需要的环境选择一个环境,我这里选择的是Pytorch 1.10. 租用成功后点击租用页面的 Jupyterlab 链接. Jupyterlab 里新建一个Terminal 用来安装环境 ...
- OFDM系统各种QAM调制阶数在多径信道下的误码性能仿真(暂存版本)
本文考虑OFDM系统在多径信道下的误码性能 代码 clc;close all;clear %% Seting parameters EbN0_list = 20:2:40; Q_order_list ...
- 游戏H5引擎Canvas屏幕自适应CSS代码
canvas.style = `touch-action: none; width:${ width }px; height:${ height }px; cursor: inherit;`;
- 【Azure Redis 缓存】Redis导出数据文件变小 / 在新的Redis复原后数据大小压缩近一倍问题分析
问题描述 使用 Azure Cache for Redis 服务,在两个Redis服务之间进行数据导入和导出测试.在Redis中原本有7G的数据值,但是导出时候发现文件大小仅仅只有30MB左右,这个压 ...
- 图数据库|Nebula Graph v3.1.0 性能报告
本文首发于 Nebula Graph Community 公众号 本文系 Nebula Graph 发行版 v3.1.0 的性能测试报告. 本文目录 测试环境 测试数据 关于 LDBC-SNB 测试说 ...
- C#与C互操作
C#给C++传递char**(转载) extern "C" _declspec(dllexport)void GetResult(char* a,char** pBuf) { sp ...