/**-------------------------
* n1和n2满足如下条件:
* 1. n1 + n2 = sum;
* 2. n1*n1 + n2*n2 = sqSum;
* 用角坐标表示n1、n2后可以将
* 条件合并为: sqrt(sqSum)*sin(z) + sqrt(sqSum)*cos(z) = sum
* 化 简 为 :1 + 2*sin(z)*cos(z) = sum*sum/sqSum
* 化 简 为 :sin(2*z) = (sum * sum)/sqSum - 1
* 所以弧度为:z = Math.asin( (sum * sum)/sqSum - 1)/2
* 所以n1 : Math.floor(Math.sin(sqrt(sqSum) * sin(z)))
* 所以n2 : Math.floor(Math.cos(sqrt(sqSum) * sin(z)))
*-------------------------*/
function analyse(){
//模拟抽取
var a = [];
var max = 100000;
var n1 = Math.floor(Math.random() * (max+1));
var n2 = Math.floor(Math.random() * (max+1));
for(var i=1; i<=max; i++){
if( i != n1 && i != n2 ){
a.push(i);
}
}
//计算两数和与平方和
var sum = (max + 1)*(max/2);
var sqSum = max*(max+1)*(2*max+1)/6; //平方和公式: n(n+1)(2n+1)/6
var num;
for(var i=0,len=a.length; i<len; i++){
num = a[i];
sum -= num;
sqSum -= num*num;
}
//计算两数
var z = Math.asin(sum*sum/sqSum - 1)/2;
var r = Math.sqrt(sqSum);
var n3= Math.round(r * Math.sin(z));
var n4= Math.round(r * Math.cos(z));
//返回
return [
[n1, n2].sort().join(','),
[n3, n4].sort().join(',')
]
}
var i, a;
for(i=0; i<1000; i++){
a = analyse();
if(a[0] != a[1]){
console.error(i + '\tnot passed test: ' + a);
}
}
分享到:
相关推荐
2020语言与智能技术竞赛:事件抽取任务2020语言与智能技术竞赛:事件抽取任务2020语言与智能技术竞赛:事件抽取任务2020语言与智能技术竞赛:事件抽取任务2020语言与智能技术竞赛:事件抽取任务2020语言与智能技术...
【Python面试题:交换圣诞节礼物】是一个典型的编程问题,它涉及到随机数生成、字典操作以及循环控制等Python基础知识。在此题中,我们要创建一个模拟圣诞礼物交换的游戏,确保每个人都能拿到别人送出的礼物,而不会...
数据抽取是大数据处理和分析中的一个关键步骤,它涉及到从各种源系统中获取并转换数据,以便进行后续的分析和挖掘。在这个过程中,核心问题主要包括数据的获取、清洗、转换和加载,通常简称为ETL(Extract, ...
2020语言与智能技术竞赛:事件抽取任务.zip
读书笔记:数据抽取组件用来从HTML、JSON、XML等原始数据中按照自定义的规则抽取想要的数据
随机抽取数字,随机抽奖等!随机抽取数字,随机抽奖等!随机抽取数字,随机抽奖等!随机抽取数字,随机抽奖等
"评标专家抽取系统"是一种专门用于招标过程中的专业软件工具,它旨在确保评标过程的公正、公平和透明。评标专家的选取是招标环节中的关键步骤,因为这些专家的决策直接影响到招标结果的公正性。传统的专家抽取方式...
【标题】:“一个简单的抽取数字的抽奖小程序” 这个标题揭示了我们讨论的是一款基于编程语言C#开发的小型软件,它的主要功能是进行数字抽取,用以实现抽奖或随机选择等目的。这样的程序通常适用于小型活动,比如...
用于2021年HCIE数通3.0版本面试。考面试之前需要通过笔试和...放平心态调整好,2021年面试的题库都在面试题库中,从面试题库里面抽取三道,希望大家能够平常多练习,2-3月备考通过IE很稳,助力大家一次通过HCIE面试。
#### 第三题:数字出现次数统计 - **知识点概述**: - **计数问题**:本题要求统计从1到223之间数字2出现的次数。 - **解题思路**:可以将这个问题分为几个部分来考虑,例如2出现在百位、十位以及个位的情况,并...
2. 社交媒体事件抽取:事件抽取系统可以用于自动抽取社交媒体事件信息,供市场营销和公关人员使用。 3. 客户反馈事件抽取:事件抽取系统可以用于自动抽取客户反馈事件信息,供客服和市场营销人员使用。 4. 智能...
- 第3题:可能抽取到的4件产品都是次品。 - 第4题:圆形纸对折两次,得到的扇形圆心角度数是90度。 - 第5题:任何三角形的内角和都是180度。 - 第6题:盐水的浓度计算是盐的质量除以盐水的总质量。 4. **计算题...
每轮循环中,都会从数组中移除已经抽取的数字,确保不会重复抽取同一个数字。 ### 关键技术点二:HTML结构及元素 #### 2.1 HTML基本结构 HTML部分定义了一个简单的页面结构,包括一个文本区域用于显示结果和一个...
数据仓库工程师面试题 下面是对数据仓库的详细介绍和知识点总结: 什么是数据仓库? 数据仓库(Data Warehouse)是指一个大型的存储数据的集合,用于解决企业数据分析和决策目的。它将来自多个数据源的数据进行...
- 第10题:概率计算,从扑克牌中抽取特定点数的概率。 3. 解答题:涵盖多项式计算、几何图形构造、方程解法、图形旋转、概率计算等。 - 第11题:可能需要进行多项式的乘法或化简。 - 第12题:同样可能涉及多项式...
本题库是针对 2014 年 3 月份考试的上机考试题库,本题库共有 100 套题目( 每套题 目包含 3 道题:一道程序填空题、一道程序修改题、一道程序设计题 ) ,真实考试的时候, 考生输入准考证后计算机随机为你抽取一套...
清华大学刘知远老师和学生韩旭、高天宇所写的关于知识图谱相关的介绍。 机器之心获授权转载,此文为.md笔记...沿着实体关系抽取需要进一步探索的四个主要方向,介绍这四个方面的发展现状和挑战,以及 一些思考和努力。
计算机类竞赛源码
MATLAB作为一种强大的数值计算和仿真工具,在多级数字抽取滤波器的设计与仿真过程中发挥着重要作用。MATLAB提供了丰富的函数库和工具箱,如Signal Processing Toolbox等,可以帮助研究人员快速实现各种滤波器的设计...