Computer Language/Algorithm

백준 알고리즘 C# 1065 한수 - MJ

유민재 2021. 11. 5. 00:00
728x90
  문제

https://www.acmicpc.net/problem/1065

 

1065번: 한수

어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나

www.acmicpc.net

  Code

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using System;
int dv = 99;
int Input = int.Parse(Console.ReadLine());
if (Input < 100)
{
    Console.WriteLine(Input);
}
else
{
    for (int i = 100; i <= Input; i++)
    {
        if (i % 10 + i / 100 == 2 *( (i / 10) %10))
        {
            dv++;
        }
    }
    Console.WriteLine(dv);
}
cs
  생각

1. 한수가 무엇인지 파악한다.

    등차 수열이기 때문에 input이 [1,10) 일 때 [10,100)일 때 [100,1000)일 때 상황이 다르다. # [,) 는 <=X< 이다.

2. 따라서 구분하여 답을 낸다.
   100 미만일때는 모든 경우가 Result 이다. [100,1000)일때는 ABC 라고 가정했을 때 A+C=2*B 이다

3. 상황에 맞게 답을 구한다.

  이론

무식하게 풀기...

반응형