2018网易编程射击游戏
小易正在玩一款新出的射击游戏,这个射击游戏在一个二维平面进行,小易在坐标原点(0,0),平面上有n只怪物,每个怪物有所在的坐标(x[i], y[i])。小易进行一次射击会把x轴和y轴上(包含坐标原点)的怪物一次性消灭。
小易是这个游戏的VIP玩家,他拥有两项特权操作:
1、让平面内的所有怪物同时向任意同一方向移动任意同一距离
2、让平面内的所有怪物同时对于小易(0,0)旋转任意同一角度
小易要进行一次射击。小易在进行射击前,可以使用这两项特权操作任意次。
小易想知道在他射击的时候最多可以同时消灭多少只怪物,请你帮帮小易。
如样例所示:
所有点对于坐标原点(0,0)顺时针或者逆时针旋转45°,可以让所有点都在坐标轴上,所以5个怪物都可以消灭。
输入描述:
输入包括三行。
第一行中有一个正整数n(1 ≤ n ≤ 50),表示平面内的怪物数量。
第二行包括n个整数x[i](-1,000,000 ≤ x[i] ≤ 1,000,000),表示每只怪物所在坐标的横坐标,以空格分割。
第二行包括n个整数y[i](-1,000,000 ≤ y[i] ≤ 1,000,000),表示每只怪物所在坐标的纵坐标,以空格分割。
输出描述:
输出一个整数表示小易最多能消灭多少只怪物。
输入例子1:
5
0 -1 1 1 -1
0 -1 -1 1 1
输出例子1:
5
import java.util.Scanner;
public class KillMonster {public static void main(String[] args){//输入所有数据Scanner sc = new Scanner(System.in);int n = sc.nextInt();int[] x = new int[n];int[] y = new int[n];for(int i=0;i < n;i++){x[i] = sc.nextInt();}for(int i=0;i < n;i++){y[i] = sc.nextInt();}//创建存储斜率的数组int[] slope = new int[n*n];int[] verticalSlope = new int[n*n];//找出所有斜率组合int s=0;for(int j=0;j < n;j++){for(int k=j+1; k < n;k++){if(x[j]-x[k] != 0 && y[j]-y[k] != 0){slope[s] = (x[j]-x[k])/(y[j]-y[k]);if(slope[s] != 0){verticalSlope[s] = -1*(1/slope[s]);//System.out.println(slope[s]);s++;}}}}//判断当斜率不为0或者无限大的时候交点个数//b1 b2为直线和X Y轴的交点的Y坐标//counth countv 为的直线和点交点个数//intersection 为两条直线的交点个数int b1 = 0;int b2 = 0;int counth = 0;int countv = 0;int intersection = 0;int temp1=0;int temp2=0;for(int u=0;u<s;u++){for(int i=0;i<n;i++){b1 = slope[u]*x[i]-y[i];for(int j=0;j<n;j++){b2 = verticalSlope[u]*x[j]-y[j];for(int k=0;k<n;k++){if(y[k] == slope[u]*x[k]-b1){counth++;}if(y[k] == verticalSlope[u]*x[k]-b2){countv++;}if(y[k] == slope[u]*x[k]-b1 && y[k] == verticalSlope[u]*x[k]-b2){intersection++;}}temp1 = counth+countv-intersection;counth = 0;countv = 0;intersection = 0;if(temp1 > temp2){temp2 = temp1;}}}}//判断当直线斜率为0的情况int xValue = 0;int yValue = 0;int counth2 = 0;int countv2 = 0;int intersection2 = 0;int temp3 = 0;int temp4 = 0;for(int u=0;u<n;u++){for(int i=0;i<n;i++){xValue = x[u];yValue = y[i];for(int j=0;j<n;j++){if(x[j] == xValue){counth2++;}if(y[j] == yValue){countv2++;}if(x[j] == xValue && y[j] == yValue){intersection2++;}}temp3 = counth2+countv2-intersection2;counth2 = 0;countv2 = 0;intersection2 = 0;if(temp3 > temp4){temp4 = temp3;}}}if(temp4 > temp2){temp2 = temp4;}System.out.println(temp2);}
}
2018网易编程射击游戏相关推荐
- 网易2018校园招聘:射击游戏 [python]
''' [编程题] 射击游戏 时间限制:1秒 空间限制:32768K 小易正在玩一款新出的射击游戏,这个射击游戏在一个二维平面进行,小易在坐标原点(0,0),平面上有n只怪物, 每个怪物有所在的坐标( ...
- C#游戏编程之创建一个简单的卷轴射击游戏
前几天很多朋友要求贴一篇有关C#游戏开发的实例.本篇文章是创建一个简单的卷轴射击游戏开发实例,内容比较完整,分享给大家,不过篇幅有些长,可以慢慢看哈!本文除CSDN博客外,任何媒体和出版物禁止转载和使 ...
- Java Swing打猎射击游戏编程代码下载
代码下载地址:http://www.zuidaima.com/share/1858069987494912.htm 原文:Java Swing打猎射击游戏编程代码下载 这是一款java swing编写 ...
- 视频教程-C++游戏编程实例精讲--3D射击游戏作弊-C/C++
C++游戏编程实例精讲--3D射击游戏作弊 80后,游戏作弊工程师,从事C++开发14年,擅长语言:C,C++ 领域:服务器开发,精通MFC,STL,Boost,熟悉TCP/IP协议,熟练运用IOCP ...
- Python奥特曼打怪兽射击游戏(基于海龟画图创作的作品,来自Python创意编程100例sprites篇_Python精灵模块)
相信这竟然是Python用海龟画图制作的作品吗? sprites模块就是用python的turtle模块开发的!所以本作品仍属于Python海龟画图作品 """奥特曼打怪 ...
- Unity空间射击游戏开发教程
描述 在本课程中,您将学习如何在unity中制作一款太空射击游戏.本课程使用全新的特性和编码实践,并且兼容所有较新版本的unity. 了解如何使用世界领先的免费游戏开发工具Unity创建太空射击游戏. ...
- 2018 腾讯功能游戏开发者赛事火热开启
9月6日,2018腾讯功能游戏开发者大赛正式开启,本次赛事是由腾讯功能游戏举办,旨在为国内优秀功能游戏作品提供发展平台,激活游戏研发从业者关注功能游戏领域.据了解,此次大赛为国内开发者提供与海外功能游 ...
- unity太空射击源码_引擎入门 | 创建双杆射击游戏(入门 2)
点击上方"蓝字"关注我们吧! 本期我们继续为大家进行双杆射击游戏的后续教程 学习内容 3.整理资产 4.导入资产 5.安装 Blender 6.导入包 文章末尾可免费获取教程源代码 ...
- python能做什么游戏-有趣又好玩的9个Python编程小游戏、简直太棒了
打开搜狗搜索APP,查看更多精彩资讯 学习编程对大多数人来说是枯燥而无聊,大家有时候往往会觉得精神崩溃,提不起学习的兴趣,因此从入门到放弃,面临这种困境该怎么办呢? 这时候就有一些大牛设计出用游戏来学 ...
- 使用 Node 开发一个多人对战的射击游戏
点击上方 前端瓶子君,关注公众号 回复算法,加入前端编程面试算法每日一题群 来源:我系小西几呀 https://juejin.cn/post/6960096410305822751 相信大家都是知道游 ...
最新文章
- 三步快删EXCEL工作表下面出现1000多万行无用数据或者空白行(空值行)
- OO第一单元总结博客
- chroma_format_idc表示的色度采样结构
- 分享套接字数据包序列化与反序列化方法
- 针对C++异常的学习
- java 日期 年数_java 日期加减天数、月数、年数的计算方式
- matlab语音去除白噪声_全国首款“AI语音电梯”亮相海淀医院、北医三院
- squid 简单介绍及代理说明
- PowerDesigner显示Comment注释栏
- elasticsearch 问题.
- java swing图书管理系统 java swing mysql实现的图书管理系统源码(1023)
- webgate 重构 工作进度计划
- html做新浪体育,新浪体育台看不了怎么办?新浪体育台网页版加载失败的解决方法介绍...
- 带你玩转软件项目测试管理——项目研发管理模式(一)
- ES(ElasticSearch) 索引创建
- Python 调用高德 API 实现地址转为经纬度
- python安装.egg文件_芳草地-小狍子的空间_百度空间
- Docker部署微服务应用笔记(三)
- 你了解屏幕后期特效怎么做吗?碉堡了!!!开箱即用
- 【CodeForces727E/CF727E】Games on a CD (字符串哈希)