2015年第六届蓝桥杯 - 省赛 - C/C++大学B组 - F. 加法变乘法
生活随笔
收集整理的這篇文章主要介紹了
2015年第六届蓝桥杯 - 省赛 - C/C++大学B组 - F. 加法变乘法
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
加法變乘法
我們都知道:1+2+3+ … + 49 = 1225。
現(xiàn)在要求你把其中兩個不相鄰的加號變成乘號,使得結果為2015
比如:1+2+3+…+10 * 11+12+…+27 * 28+29+…+49 = 2015就是符合要求的答案。
請你尋找另外一個可能的答案,并把位置靠前的那個乘號左邊的數(shù)字提交(對于示例,就是提交10)。
注意:需要你提交的是一個整數(shù),不要填寫任何多余的內(nèi)容。
Ideas
兩層for循環(huán)分別表示第一個pos1和第二個pos2加號變乘號的位置,然后把pos1位置對應的數(shù)變成pos1位置與pos1 - 1位置的乘積,把pos1 - 1位置變?yōu)?,對pos2做相同的操作,然后sum一下再check就可以了。
Code
Python
if __name__ == '__main__':for pos1 in range(1, 49):for pos2 in range(pos1 + 2, 49):nums = [i for i in range(1, 50)]nums[pos1] = nums[pos1] * nums[pos1 - 1]nums[pos1 - 1] = 0nums[pos2] = nums[pos2] * nums[pos2 - 1]nums[pos2 - 1] = 0if sum(nums) == 2015:print(f"pos1 = {pos1}, pos2 = {pos2}")Answer:16
總結
以上是生活随笔為你收集整理的2015年第六届蓝桥杯 - 省赛 - C/C++大学B组 - F. 加法变乘法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2015年第六届蓝桥杯 - 省赛 - C
- 下一篇: 2015年第六届蓝桥杯 - 省赛 - C