[문제] / URL : https://www.acmicpc.net/problem/1173
1173번: 운동
첫째 줄에 다섯 정수 N, m, M, T, R이 주어진다.
www.acmicpc.net
[C# 코드]
해당 문제는 재귀 함수를 사용하여 구현하였다.
using System;
namespace baek1173
{
class Program
{
static int GetExerciseTimeRecursive(int N, int X, int M, int T, int R, int m, int minTime, int exerciseTime)
{
if (M - m < T)
{
return -1;
}
else if (m > X)
{
return GetExerciseTimeRecursive(N, m, M, T, R, m, minTime, exerciseTime);
}
else if (exerciseTime == N)
{
return X <= M ? minTime : -1;
}
else if (X + T <= M)
{
return GetExerciseTimeRecursive(N, X + T, M, T, R, m, ++minTime, ++exerciseTime);
}
return GetExerciseTimeRecursive(N, X - R, M, T, R, m, ++minTime, exerciseTime);
}
static void Main(string[] args)
{
string[] line = Console.ReadLine().Split();
int N = int.Parse(line[0]);
int m = int.Parse(line[1]);
int M = int.Parse(line[2]);
int T = int.Parse(line[3]);
int R = int.Parse(line[4]);
int time = GetExerciseTimeRecursive(N, m, M, T, R, m, 0, 0);
Console.WriteLine(time);
}
}
}
'알고리즘 문제 풀이' 카테고리의 다른 글
[프로그래머스] C# 음양 더하기 (0) | 2021.07.23 |
---|---|
[백준 알고리즘] C# 시험 점수 5596번 (0) | 2021.07.23 |
[4344번] 평균은 넘겠지 (0) | 2020.01.10 |
[3052번] 나머지 (0) | 2020.01.07 |
[2920번] 음계 (0) | 2020.01.06 |