输入描述:
每个测试输入包含空格分割的n+1个整数,最后一个整数为k值,n不超过100。
输出描述:
输出n个整数里最小的k个数。升序输出
示例1
输入
3 9 6 8 -10 7 -11 19 30 12 23 5
输出
-11 -10 3 6 7
var readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
rl.on('line', function(line){
var arr=line.split(' ').map(function(x){return parseInt(x)});
var k=arr.splice(arr.length-1,1)[0];
arr.sort(function(a,b){return a-b;});
var result=arr.splice(0,k);
console.log(result.join(' '));
});
输入描述:
每个测试输入包含 n个空格分割的n个整数,n不超过100,其中有一个整数出现次数大于等于n/2。
输出描述:
输出出现次数大于等于n/2的数。
示例1
输入
3 9 3 2 5 6 7 3 2 3 3 3
输出
3
var readline=require('readline');
const rl=readline.createInterface({
input:process.stdin,
output:process.stdout
})
rl.on('line',function(line){
var arr=line.split(' '),
obj={},
result=[],
k=Math.floor(arr.length/2);
for(var i=0;iif(!obj[arr[i]]){
obj[arr[i]]=1;
}else{
obj[arr[i]]++;
if(obj[arr[i]]>=k){
result.push(arr[i]);
}
}
}
console.log(result.join(' '))
})
输入描述:
首先输入一个正整数N(N <= 50),接下来输入N个数表示每顶帽子的价格(价格均是正整数,且小于等于1000)
输出描述:
如果存在第三便宜的帽子,请输出这个价格是多少,否则输出-1
示例1
输入
10
10 10 10 10 20 20 30 30 40 40
输出
30
var n=parseInt(readline());
var arr=readline().split(' ').map(x=>parseInt(x));
arr.sort(function(a,b){return a-b;});
var obj={},count=0,result;
for(var i=0;iif(!obj[arr[i]]){
obj[arr[i]]=true;
count++;
if(count==3){
result=arr[i];
break;
}
}
}
if(count==3){
print(result);
}else{
print(-1);
}
1.根据字符串的字典序排序。例如:
“car” < “carriage” < “cats” < “doggies < “koala”
2.根据字符串的长度排序。例如:
“car” < “cats” < “koala” < “doggies” < “carriage”
考拉想知道自己的这些字符串排列顺序是否满足这两种排序方法,考拉要忙着吃树叶,所以需要你来帮忙验证。
输入描述:
输入第一行为字符串个数n(n ≤ 100)
接下来的n行,每行一个字符串,字符串长度均小于100,均由小写字母组成
输出描述:
如果这些字符串是根据字典序排列而不是根据长度排列输出”lexicographically”,
如果根据长度排列而不是字典序排列输出”lengths”,
如果两种方式都符合输出”both”,否则输出”none”
示例1
输入
3
a
aa
bbb
输出
both
var readline = require('readline');
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
var token = [],
boo1=true,
n=0,
countLine=1,
boo2=true;
rl.on('line', function(line) {
if(countLine===1){
n=parseInt(line);
countLine++;
}else{
token.push(line);
if(countLine===n+1){
for(var i=0;iif(i>0){
if(token[i] <= token[i-1]){
boo1=false;
}
if((token[i]).length <= (token[i-1]).length){
boo2=false;
}
}
}
if( boo1 && boo2){
console.log("both");
}else if(boo1){
console.log("lexicographically");
}else if(boo2){
console.log("lengths");
}else{
console.log("none");
}
}else{
countLine++;
}
}
});
输入描述:
第一行为一个整数n(n ≤ 1000),表示超超一共拥有n个陷阱。
第二行有n个整数xi,表示第i个陷阱的横坐标
第三行有n个整数yi,表示第i个陷阱的纵坐标
保证坐标都在草地范围内。
输出描述:
输出一个整数,表示小易最少可能多少秒就落入超超的陷阱
示例1
输入
3
4 6 8
1 2 1
输出
3
var readline=require("readline");
const el=readline.createInterface({
input: process.stdin,
out: process.stdout
})
var tokens=[],
countLine=1,
result=[];
el.on("line",function(line){
tokens.push(line);
if(countLine==3){
var n=parseInt(tokens[0]),
x=tokens[1].split(" ").map(function(x){return parseInt(x)}),
y=tokens[2].split(" ").map(function(x){return parseInt(x)});
for(var i=0; i < n; i++){
result.push(x[i]+y[i]-2);
}
result.sort(function(a,b){return a-b;});
console.log(result[0]);
}else{
countLine++;
}
})
输入n个数,请将其中的偶数的二进制反转。
eg:输入1 6 5
其中6是偶数,二进制表示为110,反转后为011,代表3,所以最终输出1 3 5.
小贱君最近脑子不怎么好使,想了半天也没想出来如何做,最后他向你寻求帮助了,帮帮可怜的小贱君吧!
输入描述:
输入包含多组测试数据。
对于每组测试数据:
N — 输入的数字个数
N个数:a0,a1,…,an-1
保证:
1<=N<=3000,0<=ai<=INT_MAX.
输出描述:
对于每组数据,输出N个整数。
示例1
输入
5
1 3 10 6 7
6
26 52 31 45 82 34
输出
1 3 5 3 7
11 11 31 45 37 17
var readline = require('readline');
rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
var n = 0;
rl.on('line', function(line) {
var data = line.trim().split(' ');
var result=[];
if(data.length == 1) {
n = parseInt(data[0]);
}else if(data.length == n) {
result = data.map(function(val, index) {
if(val % 2== 0) {
return parseInt(parseInt(val).toString(2).split('').reverse().join(''), 2).toString(10);
}else{
return val;
}
});
console.log(result.join(' '));
n = 0;
}
});