// 根据三角形三边关系
// abc分别为从短到长
// 两短边之和大于长边
// 1 和谁都组不了
var line=readline();
var lines = line.split(" ");
var left = parseInt(lines[0]);
var right = parseInt(lines[1]);
function matchesGirl(l, r){
let a = l,b,c;
if(a === 1){
a = 2;
}
if(a + 1 <= r){
b = a + 1;
}else{
print("NO");
return;
}
if(a + 2 <= r){
c = a + 2;
}else{
print("NO");
return;
}
print("YES");
print(a + " " + b + " " + c);
}
matchesGirl(left,right)
// 倒序
function reverse(str){
var result = '';
for(let k = str.length - 1; k >=0; k--){
result += str[k];
}
return result;
}
// 解码
function _decode(word){
var len = word.length;
var mid = Math.floor((len-1)/2);
var left = word.slice(0,mid + 1);
var right = reverse(word.slice(mid + 1));
// 解码
var result = "";
for(let j = 0; j < left.length; j++){
result += left[j];
if(j < right.length){
result += right[j];
}
}
return result;
}
var n = parseInt(readline());
var lines = readline().split(" ");
var res = lines.map(d => _decode(d)).join(" ");
// 打印输出
print(res);
(async () => {
document.querySelector('#root').innerText = '1'
await sleep(1000)
document.querySelector('#root').innerText = '2'
})()
// 实现sleep函数,当时没写出来,现在查资料,补上
function sleep(time){
return new Promise(function(resolve, reject) {
setTimeout(resolve, time);
})
}
开始编程吧(好)
function findNumCount(arr, num)
实现一个函数,两个参数,第一个是数组,第二是要找的元素,返回元素出现的次数
(for循环…)
已经排序的数组呢?
(灵机一动,二分查找!)
(然后码了一遍,没有实际运行,但是思路大概对吧。)
function time(hour, min)
实现一个函数,给你输入0-11的小时,0-59的分钟,画出一个手表。。。
(我略微思考觉得不会做,灵机又一动,就说canvas吗老师,canvas我不会)
CSS就行
(吐血…,画div吗老师)
然后老师提醒我怎么写,我就写了半个点!
最后老师看时间快一个点了,就停了。
(我自信地说老师我实现的还行吧)
你的时针比分针长啊!
(…)
输入6:30,你的时针还指的是6!!!
(…)
(当时这题就完事了,下面附上的代码是我之后自己总结更正的版本,供大家参考)
最后你还有什么想问的吗?
(老师你们平时项目用的技术栈,框架都是什么?)
React
(你们做移动端吗,小程序?)
我们做小程序
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Documenttitle>
head>
<body>
<div id="root">
<div id="clock">div>
<div class="pointer" id="hour">div>
<div class="pointer" id="min">div>
div>
<style>
#clock {
position: absolute;
top: 0;
left: 0;
width: 100px;
height: 100px;
border: 1px solid black;
border-radius: 50px;
}
.pointer {
position: absolute;
top: 50px;
left: 50px;
border-top: 1px red solid;
transform-origin: 0% 0%;
}
#hour {
width: 25px;
}
#min {
width: 40px;
}
style>
<script>
function time(hour, min) {
var hourDiv = document.getElementById("hour");
var minDiv = document.getElementById("min");
var minDeg = min / 60 * 360 - 90;
var hourDeg = hour / 12 * 360 + (min / 60) * (360 / 12) - 90;
hourDiv.style.transform = `rotate(${hourDeg}deg)`;
console.log(hourDiv.style.transform);
minDiv.style.transform = `rotate(${minDeg}deg)`;
console.log(minDiv.style.transform);
}
time(6, 35);
script>
body>
html>
标签(charset=“utf-8”)
与DOM渲染次序(defer, async)// 以下代码输出什么结果,this.name中this指向什么:
window.name = 'ByteDance';
function A () {
this.name = 123;
}
A.prototype.getA = function(){
console.log(this);
return this.name + 1;
}
let a = new A();
let funcA = a.getA;
funcA();
// 输出顺序是啥
console.log('begin')
setTimeout(() => {
console.log('setTimeout 1')
Promise.resolve().then(() => {
console.log('promise 1')
setTimeout(() => {
console.log('setTimeout2 between promise1&2')
})
}).then(() => {
console.log('promise 2')
})
}, 0)
console.log('end')
function repeat(func, times, wait){
return function(arg){
var count = 1;
var intervalId = setInterval(function(){
func(arg);
count === times ? clearInterval(intervalId) : count++;
}, wait);
}
}
<ul>
<li>111li>
<li>222li>
<li>333li>
ul>
<script>
// 这种实现有问题,列表选项比较多的时候有性能问题
var lists = document.getElementsByTagName("li");
for(let i = 0; i < lists.length; i++){
lists[i].addEventListener("click", function(e){
console.log(e.target.innerHTML);
})
}
// 改进的方法是,在父级元素上绑定事件,当场只是说了,没有具体实现
// 高级程序设计第三版403页事件委托
var unOrderList = document.getElementsByTagName("ul")[0];
console.log(unOrderList);
unOrderList.addEventListener("click",function(e){
e.preventDefault(); // 取消默认
e.stopPropagation(); // 组织冒泡
console.log(e.target.innerHTML);
})
script>
<div class="wrap">
<input class="input"/>
<button>确认button>
div>
<style>
.input{
width: 100%;
}
.wrap{
display: flex;
}
style>
注意:给定 n 是一个正整数。
示例 1:
输入: 2
输出: 2
解释: 有两种方法可以爬到楼顶。
- 1 阶 + 1 阶
- 2 阶
示例 2:
输入: 3
输出: 3
解释: 有三种方法可以爬到楼顶。
- 1 阶 + 1 阶 + 1 阶
- 1 阶 + 2 阶
- 2 阶 + 1 阶
// 递归
function upStairs(n){
if(n > 2){
return upStairs(n-1) + upStairs(n-2);
}else if(n === 1){
return 1;
} else if(n === 2){
return 2;
}
}
最后,三面我凉了。