441-安排硬幣
阿新 • • 發佈:2019-04-16
emp turn 必須 coins 形狀 for class 其中 總數
您想要以樓梯形狀形成總共n個硬幣,其中每個第k行必須具有恰好k個硬幣。 給定n,找到可以形成的完整樓梯行的總數。 n是一個非負整數,適合32位有符號整數的範圍。
解法1 class Solution { public int arrangeCoins(int n) { int sum=0; int temp=0; for(int i=1;i<=n;i++) { sum+=i; if(n-sum<0) { temp=i-1; break; }else if(n-sum==0){ temp=i; break; } } return temp; } 優化後: public class Solution { public int arrangeCoins(int n) { int i=0; while(n > 0){ i+=1; n-=i; } return n==0 ? i : i-1; } }
441-安排硬幣