https://programmers.co.kr/learn/courses/30/lessons/12925
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
class Solution {
public int solution(String s) {
int answer = 0;
// 첫번째 자리가 숫자가 아니면 반복문은 1부터
int iStart = (s.charAt(0) < '0') ? 1 : 0;
boolean isNegative = (s.charAt(0) == '-');
// answer += 자릿값 * 10의 n승
for (int i = iStart; i < s.length(); i++) {
answer += (s.charAt(i) - '0') * Math.pow(10, s.length() - 1 - i);
}
if (isNegative) {
answer *= -1;
}
return answer;
}
}
Colored by Color Scripter
|
TIP1
Integer.parseInt(s) 라면 1줄에 끝나지만...!
TIP2
1
2
3
|
for (int i = iStart; i < s.length(); i++) {
answer = answer * 10 + (s.charAt(i) - '0');
}
Colored by Color Scripter
|
Math.pow() 대신에
기존의 수 * 10 해서 자리를 올려주는 방법도 있다.
'Algorithm > 프로그래머스' 카테고리의 다른 글
[프로그래머스]연습문제 : 평균 구하기 (level 1) (0) | 2019.11.06 |
---|---|
[프로그래머스]연습문제 : 짝수와 홀수 (level 1) (0) | 2019.11.06 |
[프로그래머스]연습문제 : 수박수박수박수박수박수? (level 1) (0) | 2019.11.06 |
[프로그래머스]연습문제 : 소수 찾기 (level 1) (0) | 2019.11.06 |
[프로그래머스]연습문제 : 서울에서 김서방 찾기 (level 1) (0) | 2019.11.06 |
댓글