今日头条笔试双生词

自己本地测没有问题啊?为什么提交就GG?很尴尬,头条笔试这是要招什么样的人了?
import sys
def rotateString(str, offset):
if offset == 0 or not str:
return str
offset %= len(str)
str = list(str)
str = reverse(str, 0, len(str))
str = reverse(str, 0, offset)
str = reverse(str, offset, len(str))
return ''.join(str)

def reverse(str, start, end):
while (start < end):
tmp = str[start]
str[start] = str[end - 1]
str[end - 1] = tmp
start += 1
end -= 1
return str
if __name__ == "__main__":
t = int(sys.stdin.readline().strip())
l = []
for i in range(t):
n = int(sys.stdin.readline().strip())
tmp = []
for j in range(n):
s1 = sys.stdin.readline().strip()
tmp.append(s1)
l.append(tmp)

for i in l:
if len(i[0])!=len(i[1]):
print('Sad')
continue
else:
flag = True
for j in range(len(i[0])):
kk = rotateString(i[0],j)
if kk==i[1] or ''.join(list(reversed(kk)))==i[1]:
print('Yeah')
flag = False
break
if flag:
print('Sad')

#字节跳动#
全部评论
同样,本地测试能过,但是提交就不行
点赞 回复 分享
发布于 2018-08-25 11:46
我也是 不知道什么鬼
点赞 回复 分享
发布于 2018-08-25 11:45
我也是这个思路的,不对……
点赞 回复 分享
发布于 2018-08-25 11:46
哈哈   他们例子简单,换个其他的就凉了
点赞 回复 分享
发布于 2018-08-25 11:46
同样,本地测试能过,但是提交就不行
点赞 回复 分享
发布于 2018-08-25 11:48
提交不行+10086
点赞 回复 分享
发布于 2018-08-25 11:48
语法错误或者数组越界非法访问
点赞 回复 分享
发布于 2018-08-25 11:49
40%。估计还需要什么优化算法
点赞 回复 分享
发布于 2018-08-25 11:49
数组越界是什么原因?找不出来啊
点赞 回复 分享
发布于 2018-08-25 11:58
我好像也是这个问题……不知道为什么原因就交卷了……炸了hhh
点赞 回复 分享
发布于 2018-08-25 11:58
感觉难度很大,同样双生词  自己调试全能过 ,提交case0??
点赞 回复 分享
发布于 2018-08-25 11:59
提交0 难受
点赞 回复 分享
发布于 2018-08-25 12:01
import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Main {     public static StringBuffer build(StringBuffer str){         return str.append(str);     }     public static boolean compare(StringBuffer str1,StringBuffer str2,int size){         //正序         for(int i = 0;i < size;i++){             for(int j = 0;j < size;j++){                 if(str1.substring(i, i+size).equals(str2.substring(j, j+size))){                     return true;                 }else{                     if(str1.reverse().substring(i, i+size).equals(str2.reverse().substring(j, j+size))){                         return true;                     }                 }             }         }         return false;     }     public static void main(String[] args) {         Scanner in = new Scanner(System.in);                    int line = in.nextInt();    //行数                         for(int i = 0;i < line;i++){                  int strNum = in.nextInt();    //串数                  int size = 0;                  List<StringBuffer> strs = new ArrayList<StringBuffer>();                  for(int j = 0;j < strNum;j++){                      String string = in.next();                      StringBuffer str = new StringBuffer(string);                      strs.add(str);                  }                  for(int j = 0;j <strs.size()-1;j++){                      if(strs.get(j).length() != strs.get(j+1).length()){                          System.out.print("Sad");                      }else{                          StringBuffer str1 = build(strs.get(j));                          StringBuffer str2 = build(strs.get(j+1));                          int q = strs.get(j).length();                          if(compare(str1,str2,strs.get(j).length()/2) == true){                              System.out.print("yeah");                          }else{                              System.out.print("Sad");                          }                      }                  }             }     } }
点赞 回复 分享
发布于 2018-08-25 12:02
纯暴力,一个O(tn^2)的算法,过了40
点赞 回复 分享
发布于 2018-08-25 12:02
不就是循环右移and反转,全存了,然后逐个匹配么,我也是case0,自测通过
点赞 回复 分享
发布于 2018-08-25 12:02
该题40%, 交卷18分,怀疑人生。 import sys if __name__ == '__main__': n = int(sys.stdin.readline().strip()) for _ in range(n): strs = [] flag = False m = int(sys.stdin.readline().strip()) for i in range(m): line = sys.stdin.readline().strip() strs.append(line) for i in range(len(strs)-1): for j in range(i+1, len(strs)): str1 = strs[i] str2 = strs[j] for k in range(len(str2)): if str1[0] == str2[k]: str3 = str2[k:] + str2[:k] str41 = str2[:k+1] str42 = str2[k+1:] str4 = str41[::-1] + str42[::-1] if str1 == str3 or str1 == str4: flag = True if flag: print('Yeah') else: print('Sad')
点赞 回复 分享
发布于 2018-08-25 12:03
例子都是2个词, n可能是很多词
点赞 回复 分享
发布于 2018-08-25 12:03
关键投硬件岗的也是同样的编程题,一脸懵逼
点赞 回复 分享
发布于 2018-08-25 12:05
我也是啊,我怎么自测都是对的,测试用例也过了,就是通过不了,哎。有问题
点赞 回复 分享
发布于 2018-08-25 12:08
同样,本地测试能过,但是提交就不行
点赞 回复 分享
发布于 2018-08-25 12:26

相关推荐

球球别再泡了:坏,我单9要了14
点赞 评论 收藏
分享
10-07 23:57
已编辑
电子科技大学 Java
八街九陌:博士?客户端?开发?啊?
点赞 评论 收藏
分享
评论
点赞
收藏
分享
正在热议
# 25届秋招总结 #
442240次浏览 4509人参与
# 春招别灰心,我们一人来一句鼓励 #
41913次浏览 531人参与
# 北方华创开奖 #
107422次浏览 599人参与
# 地方国企笔面经互助 #
7961次浏览 18人参与
# 同bg的你秋招战况如何? #
76585次浏览 561人参与
# 虾皮求职进展汇总 #
115499次浏览 886人参与
# 阿里云管培生offer #
120209次浏览 2219人参与
# 实习,投递多份简历没人回复怎么办 #
2454609次浏览 34856人参与
# 实习必须要去大厂吗? #
55761次浏览 961人参与
# 提前批简历挂麻了怎么办 #
149889次浏览 1977人参与
# 投递实习岗位前的准备 #
1195913次浏览 18548人参与
# 你投递的公司有几家约面了? #
33203次浏览 188人参与
# 双非本科求职如何逆袭 #
662189次浏览 7394人参与
# 如果公司给你放一天假,你会怎么度过? #
4751次浏览 55人参与
# 机械人春招想让哪家公司来捞你? #
157622次浏览 2267人参与
# 如果你有一天可以担任公司的CEO,你会做哪三件事? #
11535次浏览 284人参与
# 发工资后,你做的第一件事是什么 #
12682次浏览 62人参与
# 工作中,努力重要还是选择重要? #
35793次浏览 384人参与
# 参加完秋招的机械人,还参加春招吗? #
20120次浏览 240人参与
# 我的上岸简历长这样 #
452000次浏览 8088人参与
# 实习想申请秋招offer,能不能argue薪资 #
39289次浏览 314人参与
# 非技术岗是怎么找实习的 #
155866次浏览 2120人参与
牛客网
牛客企业服务