数论小问题

输入x和y,有一个游戏,两人玩,第一轮赢的人得1分,第二轮2分…以此类推,n轮中至少需要几轮才能使得甲获得x分乙获得y分?

答案:n = min( n*(n+1)/2>=x+y )

当时看到此题时脑海中浮现的并不是分数什么的,而是一个阶梯状的管子,往里面灌水,x代表一定容量的水,y代表一定容量的水,然后管子每升高1个高度就会多1个容量,最终刚好为n(n+1)/2或n(n+1)/2+1,n(n+1)/2即x+y=n(n+1)/2,否则为n*(n+1)/2+1。


文章结束了,但我们的故事还在继续
坚持原创技术分享,您的支持将鼓励我继续创作!