题目1:计算几何题

二维空间中给定一组点的坐标, 以任息两个点为直径绘制一个圆,求可以绘制的最大圆,满足该圆不包含其他点,输出其直径。说明,圆心0,半径r的圆包含某点P的条件是,r≥(O到P的距离)。

输入说明:第一行,点的数量,不超过200;第二行开始为点二维坐标,每个点为一行,每个点的两个维度间以空格隔开,坐标值范围为[-10000.0, 10000.0]。

输出说明:输出满足条件的圆的直径(保留小数点后3位有效数字,四舍五入)。

输入样例: 4

0 0

1 1

3 0

0 0.5

输出样例: 2.236

题目1解答:

        暴力解法:遍历所有圆的半径,逐个对比找到最大值

import java.util.Scanner;
public class Main{public static int n;public static double[] x = new double[n + 10];public static double[] y = new double[n + 10];public static boolean check(double ox, double oy, double r) {int cnt = 0;for(int i = 1; i <= n; i++) {double dis = Math.sqrt((x[i] - ox) * (x[i] - ox) + (y[i] - oy) * (y[i] - oy));if(dis <= r)cnt++;}if(cnt == 2)return true;elsereturn false;} public static void main(String[] args) {Scanner sc = new Scanner(System.in);n = sc.nextInt();double ans = 0;for(int i = 1; i <= n; i++) {x[i] = sc.nextDouble();y[i] = sc.nextDouble();}for(int i = 1; i <= n - 1; i++) {for(int j = i + 1; j <= n; j++) {double ox = (x[i] + x[j]) / 2;double oy = (y[i] + y[j]) / 2;double r = Math.sqrt((x[i] - ox) * (x[i] - ox) + (y[i] - oy) * (y[i] - oy));if(check(ox, oy, r)) {ans = Math.max(ans, r * 2);}}}System.out.printf("%.3f\n", ans);}
}

题目2:动态规划题

某游戏公司设计了一个奖励活动,给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

题目2解答:

        首先将员工编号按照游戏规则转换为获得的卡片数,用一维数组score[i]保存

        然后进行动态规划三步走:

        定义dp[]dp[i]表示前i个员工获得的卡片总数

        状态转移方程:ans =  dp[i], i l

​​​​​​​        ​​​​​​​      ans = ​​​​​​​ max(ans, dp[i+ l] - dp[i]), l < i < n - l

        初始值:ans = 0

import java.util.Scanner;
public class Main{public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();int l = sc.nextInt();int x = sc.nextInt();int y = sc.nextInt();int z = sc.nextInt();long[] dp = new long[n + 10];long[] score = new long[n + 10];dp[0] = 0;for(int i = 1; i <= n; i++) {int flag1, flag2, flag3, flag4;flag1 = flag2 = flag3 = flag4 = 0;if(i % x == 0 && i % y == 0) flag1 = 1;if(i % y == 0 && i % z == 0) flag2 = 1;if(i % x == 0 && i % z == 0) flag3 = 1;if(i % x == 0 && i % y == 0 && i % z == 0) flag4 = 1;if(flag4 == 1) score[i] = 10;else if(flag3 == 1) score[i] = 8;else if(flag2 == 1) score[i] = 4;else if(flag1 == 1) score[i] = 2;else score[i] = 1;dp[i] = dp[i - 1] + score[i];}long ans = 0;for(int i = 1; i <= n - l; i++) {ans = Math.max(ans, dp[i + l] - dp[i]);}System.out.println(ans);}
}

第三届全国高校计算机能力挑战赛Java程序设计赛总结相关推荐

  1. 第二届全国高校计算机能力挑战赛-Java程序设计赛

    第二届全国高校计算机能力挑战赛-Java程序设计赛 2020年第二届全国高校计算机能力挑战赛-Java程序设计赛前15题为选择题.16,17,18,19为编程题. 16题 题目:统计从1到N的整数中, ...

  2. 【2021年第三届全国高校计算机能力挑战赛】大数据应用赛

    [2021年第三届全国高校计算机能力挑战赛]大数据应用赛 赛题:大数据应用赛 一.赛题背景: 二.时间安排: 三.奖项设置: 四.赛题和数据: 五.评价标准: 六.作品提交要求: 七.解决方案: 八. ...

  3. 全国高校计算机能力挑战赛真题(二)

    全国高校计算机能力挑战赛Java模拟练习题(二) 竞赛官网:http://www.ncccu.org.cn/ 全国高校计算机能力挑战赛真题(一) 1.模拟时间:90分钟 2.单选题15题(每题3分), ...

  4. 非科班Java尝试全国高校计算机能力挑战赛第三届计挑赛

    写在前面:①大佬勿在意,小打小闹!②若不决参加与否,希望下文可以给你帮助(仅限程序设计赛项). 文章目录 一.个人真实情况 二.比赛最细简介 三.最全参赛准备 四.比赛时候遇到不会做怎么办? 一.个人 ...

  5. 2019C语言程序设计大赛,2019年全国高校计算机能力挑战赛 C语言程序设计决赛

    2019年全国高校计算机能力挑战赛 C语言程序设计决赛 毕竟这个比赛是第一次举办,能理解.. 希望未来再举办时,能够再完善一下题面表述.数据范围. 话说区域赛获奖名额有点少吧.舍友花60块想混个创新创 ...

  6. 2020年全国高校计算机能力挑战赛C++初赛程序设计题2:九键拼音中数字与英文字母成对应关系:2--abc, 3-def, 4-ghi, 5--jkl, 6--mno, 7--pqrs, 8--tuv

    2020年全国高校计算机能力挑战赛C++初赛程序设计题2:九键拼音中数字与英文字母成对应关系:2–abc, 3-def, 4-ghi, 5–jkl, 6–mno, 7–pqrs, 8–tuv, 9–w ...

  7. 2020全国高校计算机能力挑战赛程序设计赛Python组区域赛(初赛)试题及参考解答

    2020全国高校计算机能力挑战赛程序设计赛Python组区域赛(初赛)试题及参考解答 简介 赛题构成 代码提交说明 成绩评定 2020真题 1-1 数字与相邻的前.后数字之和可以被4整除 题目 个人对 ...

  8. 全国高校计算机能力挑战赛

    CSDN话题挑战赛第1期 活动详情地址:https://marketing.csdn.net/p/bb5081d88a77db8d6ef45bb7b6ef3d7f 参赛话题:大学生竞赛指南 话题描述: ...

  9. 2020年第二届全国高校计算机能力挑战赛Excel模拟题

    2020年第二届全国高校计算机能力挑战赛Excel模拟题 Excel模拟题1 1.模拟答题时间: 60分钟; 2.单选题45题(每题1分),不定向选择题10 (每题2分),判断题10题(每题1分),实 ...

最新文章

  1. jupyterlab debugger+显示图片
  2. 【错误记录】TabLayout 升级支持库版本后报错 ( support:design 支持库升级到 28.0.0 后源码发生变更 )
  3. android安卓开发-eclipse平台下错误记录
  4. Qt Creator的配置
  5. django默认数据库sqlite3改为mysql
  6. python爬虫cookie池 与ip绑定_Python爬虫防封ip的一些技巧
  7. leetcode53 dp and 分治
  8. C4D立体素材|旅游度假主题海报,设计点睛之笔
  9. Scala tuple
  10. 大数据“杀熟不杀生”;微信朋友圈广告没完;美团打车撒币上海 | 一周业界事
  11. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 18. 基于Claim和Policy的授权 下 - 自定义Policy...
  12. 分布式文件系统(FastDFS+Tengine+fastdfs-nginx-module)
  13. 第四届组织医学与再生医学国际学术研讨会(CTERM-BT 2019)
  14. 2020.7.16.h5面试题
  15. Android中的传感器之---陀螺仪传感器
  16. Android 实现计时器功能,Android计时器的三种实现方式(Chronometer、Timer、handler)...
  17. 单片机:51最小单片机系统
  18. Python书写格式
  19. 服务器远程关机后开机开不了,远程开关机系统安全吗
  20. 2021-07-30-DJ-005 Django模型的数据批量加载

热门文章

  1. 获取当前上市公司基本信息——tushare库及基本使用
  2. 智慧农业,现代农业,数字农业-大数据应用,智慧农业方案,智慧农业-智能畜牧,智慧农业设施农业(大棚) 树形结构图,高标准农田(大田)树形结构图分为4层架构;
  3. linux常用命令加实例大全
  4. 基于libVLC的视频播放器之二:使用VLC-Qt播放RTSP流
  5. php反射型xss,利用反射型XSS漏洞,模拟获取登录账户的Cookie
  6. 解决Windows10下安装Ubuntu16.04双系统后开机没有Ubuntu引导
  7. node.js+vue婚纱影楼摄影婚庆管理系统vscode项目
  8. Hadoop大数据开发基础项目化教程
  9. express 解析post请求的数据格式
  10. C语言qsort的用法