饿了么 笔试
T1 给定一个字符串,如"osxmc",然后让你将字符串里的'm'和'w'互换。最后单行输出
T2 然后让你求一个长为n序列,下标从1到n,n从输入读取。要求该序列满足:(求和i从1到n)ai * i 的结果是3的倍数。这个序列用数组的形式输出,并且数组的元素互不相同。然后输入的第一行是t,即为共有几个测试数据。从第二行开始就是n值,比如说第二行是5,第三行是2,说明第一个测试用例是n = 5,第二个测试用例是n = 2。最后输出相应的序列,一个数组打印到一行,每一行代表一个测试用例所对应的结果。若当前输入n无法满足题目最初的要求,则该行输出-1。
T3 先定义一个概念,gcd(a, b)是a和b的最大公约数。之后从输入读取n,之后在1和n之间找两个值i和j,满足1 <= i < j <= n。之后要求(i + j) / gcd(i, j) = 1。求满足该要求的数对共有几组?输入第一行是t,即为共有几组测试数据,从第二行开始是n值,比如说第二行是5,第三行是2,说明第一个测试用例是n = 5,第二个测试用例是n = 2。最后输出(i+j)/gcd(i,j)的和,然后模于1000000007。注意这里求和,每一项都是一个ij对带入后取得的结果,最后所有这些项相加。并且打印在相应行,如第一行输出就是第一个输入的n所对应的组数。