728x90
https://school.programmers.co.kr/learn/courses/30/lessons/389478?language=java#
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
1. Java
class Solution {
public int solution(int n, int w, int num) {
int answer = 0;
int m = num;
while ( m <= n ) {
answer++;
m += (w - ((m - 1) % w) - 1) * 2 + 1;
}
return answer;
}
}
더보기
class Solution {
public int solution(int n, int w, int num) {
int answer = 0;
int level = (int) (num / w);
if ( w - (num % w) + 1 <= w ) {
level++;
}
int m = num;
while ( true ) {
answer++;
int next_m = (2 * w * (level++) + 1) - m;
if ( next_m > n ) {
break;
}
m = next_m;
}
return answer;
}
}
class Solution {
public int solution(int n, int w, int num) {
int answer = 0;
int num_mok = (int) (num / w);
int num_nmg = num % w;
int num_2_mok = num_mok + 1;
int num_2_nmg = w - num_nmg + 1;
if ( num_2_nmg >= w ) {
num_2_nmg %= w;
num_2_mok = num_mok;
}
while ( n >= w * num_mok + num_nmg ) {
answer++;
num_mok += 2;
}
while ( n >= w * num_2_mok + num_2_nmg ) {
answer++;
num_2_mok += 2;
}
return answer;
}
}
/* 반례:
3 3 1 1
5 5 3 1
10 1 4 7
10 2 5 3
*/
2. Python
def solution(n, w, num):
answer = 0
m = num;
while m <= n :
answer += 1
m += (w - ((m - 1) % w) - 1) * 2 + 1
return answer
반응형
'코딩 문제 풀기 ( Algorithm problem solving ) > 프로그래머스 ( Programmers )' 카테고리의 다른 글
[프로그래머스(Programmers)][Java,Python] (Lv2) 귤 고르기 (0) | 2025.04.02 |
---|---|
[프로그래머스(Programmers)][Java,Python] (Lv1) 가장 많이 받은 선물 (2024 KAKAO WINTER INTERNSHIP) (0) | 2025.03.31 |
[프로그래머스(Programmers)][Java,Python] (Lv1) 동영상 재생기 (PCCP 기출문제 1번) (0) | 2025.03.26 |
[프로그래머스(Programmers)][Java,Python] (Lv1) 공원 (PCCE 기출문제 10번) (0) | 2025.03.25 |
[프로그래머스(Programmers)][Java,Python] (Lv1) 붕대 감기 (PCCP 기출문제 1번) (0) | 2025.03.25 |