解题思路:模拟法
注意事项:
参考代码:
n = int(input()) nums = list(map(int,input().split())) res = 0 def add_(nums): res1 = 0 for i in range(n): if nums[i] % 2 != 0: nums[i] += 1 res1 += 1 return nums , res1 def is_ok(nums): if len(set(nums)) == 1: return True return False add_list = [0] * n flag = 1 while flag: for i in range(n-1,-1,-1): c = nums[i] // 2 nums[i] = c if i != 0: add_list[i-1] = c else: add_list[i-1] = c for i in range(n): nums[i] += add_list[i] add_list = [0] * n if is_ok(nums): flag = 0 break else: nums , res1 = add_(nums) res += res1 print(res)
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:512 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:616 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:943 |
简单的a+b (C语言代码)浏览:618 |
蚂蚁感冒 (C语言代码)浏览:816 |
1051(奇了怪了)浏览:747 |
1050题解(结构体数组与结构体指针的使用)浏览:1216 |
数组输出 (C语言代码)浏览:749 |
整数平均值 (C语言代码)浏览:856 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1108 |