大厂真题题解-米哈游3月19日算法岗三道题

2023大厂真题+题解+在线评测分享!

最近我们一直在将收集到的机试真题制作数据并搬运到OJ上,供大家免费练习,体会真题难度。现在已录入90+道2022/23年最新大厂真题,同时在不断的更新。关注"塔子哥学算法"公众号获得网址以及每道题的题解+代码。

第一题:题目内容

米小游拿到了一个仅由小写字母组成的字符串,她准备进行恰好一次操作:交换两个相邻字母,在操作结束后使得字符串的字典序尽可能大。

请你输出最终生成的字符串。

输入描述

一个仅由小写字母组成的字符串,长度不小于 2 2 2 ,不超过 200000 200000 200000

输出描述

操作后的字符串。

样例

输入

ba

输出

ab

第二题:题目内容

米小游希望你构造一个长度为 n n n 的数组,满足以下条件:

  1. 所有元素的绝对值不大于 3 3 3
  2. 相邻两个元素的乘积小于 0 0 0 ,且和不为 0 0 0
  3. 所有元素之和等于 0 0 0

输入描述

一个正整数 n n n
2 ≤ n ≤ 1 0 5 2\le n\le 10^5 2n105

输出描述

如果无解,请输出一个字符串 No Answer

否则输出 n n n 个整数。有多解输出任意即可。

样例

样例一

输入

2

输出

No Answer

样例二

输入

3

输出

-1 2 -1

样例解释

输出 2 -3 1 等合法解也是可以的。

第三题:题目内容

米小游拿到了一个无限长的字符串: 1,2,3;4,5,6;7,8,9;10,11,12;13,14......

该字符串由数字字符 ,; 以及组成,代表整个自然数集。每三个数由一个分号隔开,其它的数由逗号隔开。

米小游想知道,该字符串的第 l l l 个字符到第 r r r 字符之间有多少个逗号和分号?

输入描述

第一行输入一个正整数 t t t ,代表询问次数。

接下来的 t t t 行,每行输入两个正整数 l l l r r r ,代表一次询问。

1 ≤ t ≤ 1 0 4 1\le t\le 10^4 1t104

1 ≤ l ≤ r ≤ 1 0 12 1\le l\le r\le 10^{12} 1lr1012

输出描述

输出 t t t 行,每行输入两个整数,用空格隔开。

分别代表 , 的数量和 ; 的数量。

样例

输入

2
3 6
8 10

输出

1 1
2 0

样例解释

3 3 3 个字符到第 6 6 6 个字符是 "2,3;" ,包含一个逗号和一个分号。

8 8 8 个字符到第 10 10 10 个字符是 ”,5," ,包含 2 2 2 个逗号,没有分号。

你可能感兴趣的:(算法,数据结构)