JAVA에서 long과 int의 차이

stella·2021년 9월 9일
0
class Solution {
    public String shiftingLetters(String s, int[] shifts) {
       
        String result="";
       
          long[]sumshifts=new long[shifts.length];
          long sum=0;
         for(int j=shifts.length-1;j>=0;j--){
             sum+=shifts[j];
             sumshifts[j]=sum;

         }

          
        StringBuilder sb=new StringBuilder();
          
             for(int i=0;i<s.length();i++){
              long index=s.charAt(i)-'a';
              
             
              sb.append((char)((index+sumshifts[i])%26+'a'));
          }
         
          return sb.toString();
      }
}

코테 문제
Shift[i]<10^9
->int는

-2147483648 ~ 2147483647

long은

-9223372036854775808 ~ 9223372036854775807

이므로 sum을 했을때는 2147483647보다 커질 수도 잇으므로long으로만 나타낼 수 있다.!!

블로그 출처

profile
뚠뚠뚠..

0개의 댓글