搜狗2019秋招前端工程师编程题合集(第一场)
时长:120分钟 总分:100分
128浏览 0人已完成答题
题型介绍
题型 | 填空题 |
---|---|
数量 | 3 |
数字序列
第2至N+1行:每行1个数输入样例: 10 1 1 3 4 6 6 5 1 3 3 输出描述: 第一行:最小的区间长度 区间个数X (以空格进行分隔)
第二行:X个区间的起始和结束位置,按照出现的顺序有序输出,多个区间之间以空格分隔,每个区间的输出格式如下所示:[start,end],最后以换行结尾输出样例 6 3 [2,7] [3,8] [4,9]
UTF-8 编码验证
UTF-8 中的一个字符可能的长度为 1 到 4 字节,遵循以下的规则:
1. 对于 1 字节的字符,字节的第一位设为0,后面7位为这个符号的unicode码。
2. 对于 n 字节的字符 (n > 1),第一个字节的前 n 位都设为1,第 n+1 位设为0,后面字节的前两位一律设为10。剩下的没有提及的二进制位,全部为这个符号的unicode码。
这个是UTF-8编码的工作方式:
Char. number range | UTF-8 octet sequence (hexadecimal) | (binary) --------------------+--------------------------------------------- 0000 0000-0000 007F | 0xxxxxxx 0000 0080-0000 07FF | 110xxxxx 10xxxxxx 0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx 0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx给定一个表示数据的整数数组,返回它是否为有效的 utf-8 编码。
注意:
输入是整数数组。只有每个整数的最低 8 个有效位用来存储数据。这意味着每个整数只表示 1 字节的数据。
拖拽拼图
请完成drag函数,当执行drag后,可以实现如下需求
1. 用户可以把左边的拼图块全部移到右边对应位置,全部移动完成要求弹出提示框显示拼图成功(提示框为id标记为success的div标签)
2. 如果在移动途中松开鼠标,则
  2.1 左侧拼图模块如果没有和目标位置发生重合,拼图模块需要回到原来的位置
  2.2 如果拼图模块和目标位置有2/3以上重合则认为拼图成功,此时拼图模块移动到目标位置,并且无法再次拖动
3. 在移动时鼠标需要一直在拼图模块上,否则拼图模块停止移动
4. 当前页面默认已经调用drag函数,请不要删除该调用语句
5. 请不要手动修改html和css
6. 不要使用第三方插件
7. 请使用ES5语法