Problem Description
YJQQQAQ has an array A of length n. He defines a function fl,r,k where l,r,k are positive integers that satisfies l≤r and r×k≤n, and the value of the function equals to p×q×⌊k√⌋ where p equals to the sum value of Al×k,A(l+1)×k,...,Ar×k and q equals to the minimal value of them. YJQQQAQ wants to choose the positive integers l,r,k carefully to maximize the value of the function.

Input
The first line contains an integer T(1≤T≤3)——The number of the test cases. For each test case:
The first line contains an integers n(1≤n≤300,000).
The second line contains n integers describing the given array A, the ith integer is Ai(1≤Ai≤1,000,000). Between each two adjacent integers there is a white space separated.

Output
For each test case, the only line contains the only integer that is the maximum value of the function.

Sample Input
1
3
2 3 1

Sample Output
10

1个回答

Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41

**原问题：** 计算序列数据的均方误差.均方误差(Mean Squared Error, MSE)是衡量“平均误差”的一种较方便的方法，可以评价数据的变化程度。均方根误差是均方误差的算术平方根。对于N1,....Nm,设N=(N1+...+Nm)/m;则均方根误差记作：t=sqrt(((N^2-N1^2)+...+(N^2-Nm^2))/(m(m-1)))；(这里N^2表示N的平方)。编写函数float rmse(float * a, int n)计算存放在数组ary中的10个数据的均方根误差，这里a为存放数据的数组，n是数组中数据个数。在主调函数中调用该函数，并在主调函数中输出结果。_

Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41

Problem Description Find the biggest integer n (1 <= n <= N) and an integer x to make them satisfy Input The input consists of several test cases. Each test case contains a integer N, 1<=N<=10^18.The input ends with N = 0. Output In one line for each case, output two integers n and x you have found. Sample Input 1 2 0 Sample Output 1 1 1 1

Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41

Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41
C语言用迭代法求平方根

（C语言）怎样判断大数是否是素数？

C语言n层嵌套平方根的计算 不知道哪里错了，，
#include <stdio.h> double Y(double x,int n) { if(n == 0) return 0; else return (square(x + Y(x,n-1))); } int main() { double a;int b;float result; printf("Please input x and n:"); scanf("%lf,%d",&a,&b); result=Y(a,b); printf("Result=%.2f\n",result); return 0; }

Problem Description Let's define the function f(n)=⌊n−√⌋. Bo wanted to know the minimum number y which satisfies fy(n)=1. note:f1(n)=f(n),fy(n)=f(fy−1(n)) It is a pity that Bo can only use 1 unit of time to calculate this function each time. And Bo is impatient, he cannot stand waiting for longer than 5 units of time. So Bo wants to know if he can solve this problem in 5 units of time. Input This problem has multi test cases(no more than 120). Each test case contains a non-negative integer n(n<10100). Output For each test case print a integer - the answer y or a string "TAT" - Bo can't solve this problem. Sample Input 233 233333333333333333333333333333333333333333333333333333333 Sample Output 3 TAT
C语言程序设计，求数列的前m项的和
Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41
C语言， 求数列的和
Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41

Problem Description You are now working in a physical laboratory. One day, when you were skimming through your records of experiments, you find that the squared frequency, defined as (P/Q)2, in which Q indicates times of experiments and P means number of experiments in which the expected phenomenon appears, is somehow unreasonable. The squared frequency F (0 < F < 1) is written in decimal form, and rounded to K (K ≤ 9) numbers after the decimal point. You think that Q, i.e. times of experiments, is too small to obtain such a number. Now you need to work out a fraction P/Q, so that rounding (P/Q)2 to K numbers after the decimal point gets exactly F, and minimizes Q. Input Input contains no more than 2000 test cases. Each test case has a single line, which contains a decimal fraction indicating F, the squared frequency. Output For each test case, output your answer in a line with the case number, follow the format in sample. You should print a blank after ':'. If the answer is not unique, output the one with the minimum P. Sample Input 0.3 0.5 0.50 Sample Output Case #1: 1/2 Case #2: 5/7 Case #3: 12/17
java简易计算器实现，添加能够切换简易计算器和科学计算器的按键。
![图片说明](https://img-ask.csdn.net/upload/201810/27/1540655964_202901.png) 现已有完整计算器框架和实现，但是需求有一条是： 能 通过菜单可以切换简易计算器和科学计算器。 如今就这个功能未实现，简易计算器就是只包含+、-、*、/的状态，而科学计算器则包括开方、平方、幂运算、1/n等操作。各运算已实现，但就是不知道怎么切换界面。求大神添加一个能够让其变化界面的按钮函数来实现。 附上代码： ``` import java.awt.BorderLayout; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JTextField; /** * 一个计算器，与Windows附件自带计算器的标准版功能、界面相仿。 但还不支持键盘操作。 */ public class Calculator extends JFrame implements ActionListener { /** 计算器上的键的显示名字 */ private final String[] KEYS = { "7", "8", "9", "÷", "sqrt", "4", "5", "6", "x", "%", "1", "2", "3", "-", "1/x", "0", "+/-", ".", "+", "=" }; /** 计算器上的功能键的显示名字 */ private final String[] COMMAND = { "Backspace", "CE", "C" }; /** 计算器左边的M的显示名字 */ private final String[] M = { " ", "MC", "MR", "MS", "M+" }; /** 计算器上键的按钮 */ private JButton keys[] = new JButton[KEYS.length]; /** 计算器上的功能键的按钮 */ private JButton commands[] = new JButton[COMMAND.length]; /** 计算器左边的M的按钮 */ private JButton m[] = new JButton[M.length]; /** 计算结果文本框 */ private JTextField resultText = new JTextField("0"); // 标志用户按的是否是整个表达式的第一个数字,或者是运算符后的第一个数字 private boolean firstDigit = true; // 计算的中间结果。 private double resultNum = 0.0; // 当前运算的运算符 private String operator = "="; // 操作是否合法 private boolean operateValidFlag = true; /** * 构造函数 */ public Calculator() { super(); // 初始化计算器 init(); // 设置计算器的背景颜色 this.setBackground(Color.BLACK); this.setTitle("计算器"); // 在屏幕(500, 300)坐标处显示计算器 this.setLocation(500, 300); // 不许修改计算器的大小 this.setResizable(false); // 使计算器中各组件大小合适 this.pack(); } /** * 初始化计算器 */ private void init() { // 文本框中的内容采用右对齐方式 resultText.setHorizontalAlignment(JTextField.RIGHT); // 不允许修改结果文本框 resultText.setEditable(false); // 设置文本框背景颜色为白色 resultText.setBackground(Color.WHITE); // 初始化计算器上键的按钮，将键放在一个画板内 JPanel calckeysPanel = new JPanel(); // 用网格布局器，4行，5列的网格，网格之间的水平方向间隔为3个象素，垂直方向间隔为3个象素 calckeysPanel.setLayout(new GridLayout(4, 5, 3, 3)); for (int i = 0; i < KEYS.length; i++) { keys[i] = new JButton(KEYS[i]); calckeysPanel.add(keys[i]); keys[i].setForeground(Color.blue); } // 运算符键用红色标示，其他键用蓝色表示 keys[3].setForeground(Color.red); keys[8].setForeground(Color.red); keys[13].setForeground(Color.red); keys[18].setForeground(Color.red); keys[19].setForeground(Color.red); // 初始化功能键，都用红色标示。将功能键放在一个画板内 JPanel commandsPanel = new JPanel(); // 用网格布局器，1行，3列的网格，网格之间的水平方向间隔为3个象素，垂直方向间隔为3个象素 commandsPanel.setLayout(new GridLayout(1, 3, 3, 3)); for (int i = 0; i < COMMAND.length; i++) { commands[i] = new JButton(COMMAND[i]); commandsPanel.add(commands[i]); commands[i].setForeground(Color.red); } // 初始化M键，用红色标示，将M键放在一个画板内 JPanel calmsPanel = new JPanel(); // 用网格布局管理器，5行，1列的网格，网格之间的水平方向间隔为3个象素，垂直方向间隔为3个象素 calmsPanel.setLayout(new GridLayout(5, 1, 3, 3)); for (int i = 0; i < M.length; i++) { m[i] = new JButton(M[i]); calmsPanel.add(m[i]); m[i].setForeground(Color.red); } // 下面进行计算器的整体布局，将calckeys和command画板放在计算器的中部， // 将文本框放在北部，将calms画板放在计算器的西部。 // 新建一个大的画板，将上面建立的command和calckeys画板放在该画板内 JPanel panel1 = new JPanel(); // 画板采用边界布局管理器，画板里组件之间的水平和垂直方向上间隔都为3象素 panel1.setLayout(new BorderLayout(3, 3)); panel1.add("North", commandsPanel); panel1.add("Center", calckeysPanel); // 建立一个画板放文本框 JPanel top = new JPanel(); top.setLayout(new BorderLayout()); top.add("Center", resultText); // 整体布局 getContentPane().setLayout(new BorderLayout(3, 5)); getContentPane().add("North", top); getContentPane().add("Center", panel1); getContentPane().add("West", calmsPanel); // 为各按钮添加事件侦听器 // 都使用同一个事件侦听器，即本对象。本类的声明中有implements ActionListener for (int i = 0; i < KEYS.length; i++) { keys[i].addActionListener(this); } for (int i = 0; i < COMMAND.length; i++) { commands[i].addActionListener(this); } for (int i = 0; i < M.length; i++) { m[i].addActionListener(this); } } /** * 处理事件 */ public void actionPerformed(ActionEvent e) { // 获取事件源的标签 String label = e.getActionCommand(); if (label.equals(COMMAND[0])) { // 用户按了"Backspace"键 handleBackspace(); } else if (label.equals(COMMAND[1])) { // 用户按了"CE"键 resultText.setText("0"); } else if (label.equals(COMMAND[2])) { // 用户按了"C"键 handleC(); } else if ("0123456789.".indexOf(label) >= 0) { // 用户按了数字键或者小数点键 handleNumber(label); // handlezero(zero); } else { // 用户按了运算符键 handleOperator(label); } } /** * 处理Backspace键被按下的事件 */ private void handleBackspace() { String text = resultText.getText(); int i = text.length(); if (i > 0) { // 退格，将文本最后一个字符去掉 text = text.substring(0, i - 1); if (text.length() == 0) { // 如果文本没有了内容，则初始化计算器的各种值 resultText.setText("0"); firstDigit = true; operator = "="; } else { // 显示新的文本 resultText.setText(text); } } } private void handleNumber(String key) { if (firstDigit) { // 输入的第一个数字 resultText.setText(key); } else if ((key.equals(".")) && (resultText.getText().indexOf(".") < 0)) { // 输入的是小数点，并且之前没有小数点，则将小数点附在结果文本框的后面 resultText.setText(resultText.getText() + "."); } else if (!key.equals(".")) { // 如果输入的不是小数点，则将数字附在结果文本框的后面 resultText.setText(resultText.getText() + key); } // 以后输入的肯定不是第一个数字了 firstDigit = false; } private void handleC() { // 初始化计算器的各种值 resultText.setText("0"); firstDigit = true; operator = "="; } private void handleOperator(String key) { if (operator.equals("÷")) { // 除法运算 // 如果当前结果文本框中的值等于0 if (getNumberFromText() == 0.0) { // 操作不合法 operateValidFlag = false; resultText.setText("除数不能为零"); } else { resultNum /= getNumberFromText(); } } else if (operator.equals("1/x")) { // 倒数运算 if (resultNum == 0.0) { // 操作不合法 operateValidFlag = false; resultText.setText("零没有倒数"); } else { resultNum = 1 / resultNum; } } else if (operator.equals("+")) { // 加法运算 resultNum += getNumberFromText(); } else if (operator.equals("-")) { // 减法运算 resultNum -= getNumberFromText(); } else if (operator.equals("x")) { // 乘法运算 resultNum *= getNumberFromText(); } else if (operator.equals("sqrt")) { // 平方根运算 resultNum = Math.sqrt(resultNum); } else if (operator.equals("%")) { // 百分号运算，除以100 resultNum = resultNum / 100; } else if (operator.equals("+/-")) { // 正数负数运算 resultNum = resultNum * (-1); } else if (operator.equals("=")) { // 赋值运算 resultNum = getNumberFromText(); } if (operateValidFlag) { // 双精度浮点数的运算 long t1; double t2; t1 = (long) resultNum; t2 = resultNum - t1; if (t2 == 0) { resultText.setText(String.valueOf(t1)); } else { resultText.setText(String.valueOf(resultNum)); } } // 运算符等于用户按的按钮 operator = key; firstDigit = true; operateValidFlag = true; } /** * 从结果文本框中获取数字 * * @return */ private double getNumberFromText() { double result = 0; try { result = Double.valueOf(resultText.getText()).doubleValue(); } catch (NumberFormatException e) { } return result; } public static void main(String args[]) { Calculator calculator1 = new Calculator(); calculator1.setVisible(true); calculator1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } } ```

#include <iostream> #include <cmath> #include <iomanip> using namespace std; int main() { double a, x0, x1, t; int n = 1; cin >> a; x0 = a / 2; x1= 1.0/ 2 * (x0 + a / x0); while (x1 - x0 >= pow(10, -5)) { t = x1; x1 = 1.0/ 2 * (x0 + a / x0); x0 = x1; n++; } cout << fixed<<setprecision(6)<<x1; return 0; }

Problem Description 数列的定义如下： 数列的第一项为n，以后各项为前一项的平方根，求数列的前m项的和。 Input 输入数据有多组，每组占一行，由两个整数n（n<10000）和m(m<1000)组成，n和m的含义如前所述。 Output 对于每组输入数据，输出该数列的和，每个测试实例占一行，要求精度保留2位小数。 Sample Input 81 4 2 2 Sample Output 94.73 3.41

# 遇到一个c++的题目： 从键盘输入a，用迭代法求a的平方根x= 根号a。求平方根的迭代公式为： xn+1 = 1/2*（xn+a/xn） 要求精确到|xn+1 - xn|<10^-5。 提示：迭代法是把xn代入迭代公式右边，计算出xn+1来，然后把xn+1作为新的xn ，计算出新的xn+1，如此重复，直到|xn+1 - xn|<10-5 时，xn+1 为所求的平方根。** 关于这一步代码 ：xn+1 = 1/2*（xn+a/xn） 我一开始先写的是 x2 = 1 / 2 * ( x1 + a / x1 ) ; 此时输入a = 4， 得出 根号a=inf 然后改为 ： x2 = ( x1 + a / x1 ) / 2 ; 此时输入a = 4 ，得出 根号a= 2 这是为什么呢？ ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571920388_946023.png) ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571920401_701818.png) ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571920416_255522.png) ![图片说明](https://img-ask.csdn.net/upload/201910/24/1571920495_730990.png)
C#面试的问题：用扩展方法实现给double添加开平方根的功能，函数名叫做sqrt。
C#面试的问题：用扩展方法实现给double添加开平方根的功能，函数名叫做sqrt。
SRUKF(平方根无迹卡尔曼)中QR和Cholesky的问题
matlab程序 有两个问题 1.时间更新，QR分解过程中，按照公式，代码写成 [UPF_Q_k_1_k,UPF_S_k_1_k]=qr([sqrt(UPF_Xb_P_w_n1)*UPF_Xb_estimate_1_par(:,2:2*UPF_L+1)-UPF_Xb_estimate_1_i(:,ones(1,2*UPF_L)) sqrt(Q)],0); 但是sqrt(UPF_Xb_P_w_n1)*UPF_Xb_estimate_1_par(:,2:2*UPF_L+1)-UPF_Xb_estimate_1_i(:,ones(1,2*UPF_L))和sqrt(Q)不同维，怎么合成一个大矩阵？ 前者是3×（2*UPF_L），后者是2×2矩阵 2.UPF_S_k_1_k=cholupdate(UPF_S_k_1_k,UPF_Xb_estimate_1_par(:,1)-UPF_Xb_estimate_1_i,sign(UPF_P_w_1)); UPF_S_k_1_k矩阵不是方阵，怎么进行克罗内克分解？ 谁能给我个SRUKF的代码吗？感激万分 544166264@qq.com
Kafka实战(三) - Kafka的自我修养与定位
volatile 与 synchronize 详解
Java支持多个线程同时访问一个对象或者对象的成员变量，由于每个线程可以拥有这个变量的拷贝（虽然对象以及成员变量分配的内存是在共享内存中的，但是每个执行的线程还是可以拥有一份拷贝，这样做的目的是加速程序的执行，这是现代多核处理器的一个显著特性），所以程序在执行过程中，一个线程看到的变量并不一定是最新的。 volatile 关键字volatile可以用来修饰字段（成员变量），就是告知程序任何对该变量...
Java学习的正确打开方式

linux系列之常用运维命令整理笔录

GitHub开源史上最大规模中文知识图谱

loonggg读完需要3分钟速读仅需1分钟事件还得还原到昨天晚上，10 月 29 日晚上 20:09-21:14 之间，微信支付发生故障，全国微信支付交易无法正常进行。然...
Python十大装B语法
Python 是一种代表简单思想的语言，其语法相对简单，很容易上手。不过，如果就此小视 Python 语法的精妙和深邃，那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点，并附上详细的实例代码。如能在实战中融会贯通、灵活使用，必将使代码更为精炼、高效，同时也会极大提升代码B格，使之看上去更老练，读起来更优雅。

2019年11月中国大陆编程语言排行榜
2019年11月2日，我统计了某招聘网站，获得有效程序员招聘数据9万条。针对招聘信息，提取编程语言关键字，并统计如下： 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...

《奇巧淫技》系列-python！！每天早上八点自动发送天气预报邮件到QQ邮箱

SQL-小白最佳入门sql查询一

Nginx 原理和架构
Nginx 是一个免费的，开源的，高性能的 HTTP 服务器和反向代理，以及 IMAP / POP3 代理服务器。Nginx 以其高性能，稳定性，丰富的功能，简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求，主要负责调度工作进程：加载配置、启动工作进程及非停升级。worker 进程负责处...