力扣简66 +1
作者:互联网
还是暴力写法 转成数加一再压回 下面有错误 对于超过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; } } }
标签:digits,10,int,res,sum,力扣,flag,66 来源: https://www.cnblogs.com/ayuanjiejie/p/16257496.html