LeetCode刷题记录5——441. Arranging Coins(easy)

LeetCode刷题记录5——441. Arranging Coins(easy)

目录

LeetCode刷题记录5——441. Arranging Coins(easy)

题目

语言

思路

后记

 


题目

LeetCode刷题记录5——441. Arranging Coins(easy)

题目的意思是它输入一个整数,然后返回能完整的排序几行(例如第一行就1,第二行就2,第三行就3……),返回这个行数。举个例子:加入输入的是5,那么第一行给1个,剩4个;第二行给2个,剩2个;第三行本来要给3个,可是现在只剩2个给不了3个了,所以就结束,也就是说在这里,完整的排序有2行(因为第三行不是完整的,不算),所以输入的是5,返回的就是2。

语言

Java、C、C++

思路

分两种情况分析:

  • 第一种当输入为0时,直接返回0

  • 第二种输入不为0时,先将输入的n存到num中,然后循环n次,i从1到n,i每次加1,在这里,i其实就是代表的每一行,i=1就是第一行,i=2就是第二行,循环体中要做的就是将num=num-i,这样num就在减少,但i再增加,当num小于等于i时,就跳出循环,直接返回i。

后记

LeetCode刷题记录5——441. Arranging Coins(easy)

今天分别用了三种语言去测试他们的速度,结果发现Java>C++>C