力扣簡66 +1
阿新 • • 發佈:2022-05-11
還是暴力寫法 轉成數加一再壓回 下面有錯誤 對於超過int型別的整數出錯 還沒有改好
class Solution {
public int[] plusOne(int[] digits) {
int sum=0; int count=0; int flag=0; int l=digits.length; for(int i=0;i<l;i++) { sum=(int)(sum+digits[i]*Math.pow(10,l-i-1)); if (digits[i]==9) { count++; } } sum=sum+1; // System.out.println(sum); if(count==l) { int[]res = new int[l+1]; while(sum!=0) { res[l-flag]=sum % 10; sum=sum/10; flag++; } // for(int i:res) { // System.out.print(i); // } return res; } else { int[]res=new int[l]; while(sum!=0) { res[l-flag-1]=sum % 10; sum=sum/10; flag++; } // for(int i:res) { // System.out.print(i); // } return res; } } }
int sum=0; int count=0; int flag=0; int l=digits.length; for(int i=0;i<l;i++) { sum=(int)(sum+digits[i]*Math.pow(10,l-i-1)); if (digits[i]==9) { count++; } } sum=sum+1; // System.out.println(sum); if(count==l) { int[]res = new int[l+1]; while(sum!=0) { res[l-flag]=sum % 10; sum=sum/10; flag++; } // for(int i:res) { // System.out.print(i); // } return res; } else { int[]res=new int[l]; while(sum!=0) { res[l-flag-1]=sum % 10; sum=sum/10; flag++; } // for(int i:res) { // System.out.print(i); // } return res; } } }