반응형
https://school.programmers.co.kr/learn/courses/30/lessons/12924
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
package Programmers; public class 숫자의표현 { public static void main(String[] args){ 숫자의표현 T = new 숫자의표현(); int n = 15; T.solution(n); } public int solution(int n) { int answer = 0; int sum = 0; int lt = 1; for (int rt = 0; rt <= n; rt++) { sum += rt; if(sum == n) answer++; while (sum >= n){ sum -= lt++; if(sum == n) answer++; } } return answer; } }
1. 풀이
1.1) 투포인터 알고리즘으로 품.
- for문은 rt 가 n까지 증가,
- 값을 증가시키면서 n과 비교하여 같다면 answer++;
- 합한값이 n보다 크다하면 lt값을 이동시켜주면서 있던자리의 값은 빼주면 된다.
반응형
'기타 > 알고리즘' 카테고리의 다른 글
[알고리즘] 프로그래머스 - 짝지어제거하기 Lv02 Java (0) | 2023.07.18 |
---|---|
[알고리즘] 프로그래머스 - 멀리뛰기 Java Lv02 (0) | 2023.07.15 |
[알고리즘] 프로그래머스 - 최소값만들기 Lv02 Java (0) | 2023.07.04 |
[알고리즘] 프로그래머스 - 타겟넘버 LV02 Java (0) | 2023.07.04 |
[알고리즘] 프로그래머스 - 쿼드 압축 후 개수세기 LV02 Java (0) | 2023.06.26 |