# 不知道能不能过,求题目测试 # 这种做法的时间复杂度应该是O(klgk+kn) import sys def calc_movement(start, end):     global total_num     global position     movement = 0     if end >= total_num:         position.append(total_num + position[0])         position.pop(0)     for idx, num in enumerate(position):         movement += abs(start + idx - num)     return movement if __name__ == "__main__":     line1 = sys.stdin.readline().strip().split()     line2 = sys.stdin.readline().strip().split()     line1 = map(int, line1)     line2 = map(int, line2)     total_num = line1[0]     position = line2     position = sorted(position)     window_size = len(position)     result = sys.maxint     for i in range(total_num):         result = min(result, calc_movement(i, i + window_size-1))     print result
点赞 评论

相关推荐

不愿透露姓名的神秘牛友
昨天 11:22
怎么这么多逆天求职者,救救我救救我救救我😭
flmz_Kk:哈哈哈哈哈哈,这么多求职者,肯定有那一两个逆天的
点赞 评论 收藏
分享
人力小鱼姐:实习经历没有什么含金量,咖啡店员迎宾这种就别写了,其他两段包装一下 想找人力相关的话,总结一下个人优势,结合校园经历里有相关性的部分,加一段自我评价
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务