牛客
赛码 [JSV8]
数列和
题目描述:
数列的定义如下: 数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
样例输入
81 4
2 2
样例输出
94.73
3.41
let m,n,sc,sum;
while((sc = read_line()) != ''){
let arr = sc.split(' ');
n =parseInt(arr[0]);
m= parseInt(arr[1]);
sum = 0;
for(let i =0;i<m;i++){
sum = sum + n;
n = Math.sqrt(n);
}
print(sum.toFixed(2));
}
水仙花
题目描述:
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的: “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=1^3+5^3+3^3。 现在要求输出所有在m和n范围内的水仙花数。
输入描述:
输入数据有多组,每组占一行,包括两个整数m和n(100<=m<=n<=999)。
样例输入
100 120
300 380
样例输出
no
370 371
var m,n,sc;
while((sc = read_line()) != ''){
let arr = sc.split(' ');
m = parseInt(arr[0]);
n = parseInt(arr[1]);
if(100<=m&&m<=n&&n<=999){
let out = [];
let j = 0;
for(let i = m;i<=n;i++){
let gewei,shiwei,baiwei;
baiwei =parseInt(i/100);
shiwei = parseInt((i - baiwei*100)/10);
geiwei = i-baiwei*100-shiwei*10;
if(i==geiwei*geiwei*geiwei+shiwei*shiwei*shiwei+baiwei*baiwei*baiwei){
j = j+1;
if(j>1){
out.push(" "+ i);
}else{
out.push(i)
}
}
}
if(j==0){
out.push('no');
}
print(out.join(''))
}
}
其他
输入
3
3 3 2
var line;
let arr1 =[];
while((line = read_line()) != ''){
//每次读取的一行数据转成数组
let arr = line.split(' ').map((v)=>parseInt(v));
//二维数组封装
arr1.push(arr);
//如果读取完毕(正好2行)
if(arr1.length === 2){
//进行逻辑处理
printOut(arr1[1]);
}
}
赛码 [NodeJs]
数列和
题目描述:
数列的定义如下: 数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。
样例输入
81 4
2 2
样例输出
94.73
3.41
var readline = require('readline');
process.stdin.setEncoding('utf-8');
var rl = readline.createInterface({input: process.stdin, output: process.stdout, prompt:''});
rl.prompt();
rl.on('line', function (data) {
let arr = data.split(' ').map(v => parseInt(v));
let n = arr[0];
let m = arr[1];
let sum = 0;
if(arr.length ==2 ){
for(let i =0;i<m;i++){
sum = sum+n;
n = Math.sqrt(n);
}
process.stdout.write(sum.toFixed(2));
}
});
其他
样例输入
3
3 3 2
样例输出
var readline = require('readline');
process.stdin.setEncoding('utf-8');
let arr1 = [];
var rl = readline.createInterface({input: process.stdin, output: process.stdout, prompt:''});
rl.prompt();
rl.on('line', function (data) {
//将每行读的值转成数组
let arr = data.split(' ').map((v)=>parseInt(v));
//用二维数组存
arr1.push(arr);
//如果读取完毕(正好2行)
if (arr1.length ===2) {
//进行逻辑处理
printOut(arr1[1]);
}
});
华为
process.stdin.resume();
process.stdin.setEncoding('utf-8');
let input = '';
process.stdin.on('data', (data) => {
//一行一行读入,input读入一行字符串
input += data;
});
process.stdin.on('end', () => {
deal(input);
function deal(s){
let set = new Set();
for(let i =0;i<s.length;i++){
let visited = [i];
let header = input[i];
helper(visited,set,s,header);
}
console.log(set.size);
}
function helper(visited,set,s,header){
if(visited.length === s.length){
set.add(header);
}
for(let i =0 ;i<s.length;i++){
if(!visited.includes(i)){
let tempStr = header +s[i];
let tempVisited = [...visited];
tempVisited.push(i);
helper(tempVisited,set,s,tempStr);
}
}
}
/**
* 待实现函数,在此函数中填入答题代码
* doFunc()
*/
process.exit();
});