[백준][C/C++] 1065번: 한수

2021. 6. 26. 14:27·Algorithm/백준
반응형

문제

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

입력

첫째 줄에 1,000보다 작거나 같은 자연수 N이 주어진다.

출력

첫째 줄에 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력한다.

 

 

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
void num_hansoo() {
	int n;
	int cnt = 0;
	scanf("%d", &n);
	
	for (int i = 1; i <= n; i++) {
		if (i < 10) {
			cnt++;
		}
		else if (i < 100) {
			cnt++;
		}
		else {
			if ((i / 100 - i % 100 / 10) == (i % 100 / 10 - i % 10)) {
				cnt++;
			}
		}	
	}
	printf("%d\n", cnt);
}

int main() {
	num_hansoo();
}

 

ex)
1자리: 모두 한수 1, 2 ,3 , ---

2자리: 모두 한수 10, 11, 12, 13, ---

3자리: 일부 한수(등차가 최대 4 최소 -4)
111, 123, 135, 147, 159
210, 222, 234, 246, 258
321, 333, 345, 357, 369
420, 432, 444, 456, 468
531, 543, 555, 567, 579
---
951, 963, 975, 987, 999

 

정수의 자릿수를 통한 연산을 통해 알고리즘을 만들어야했습니다.

  1. i를 1 부터 n까지 돌리며, 한수에 해당되면 cnt++한다.
  2. 1 - 1000을 자릿수로 분류한다.
  3. 한자리와 두자리는 전부 한수이기 때문에 무조건 cnt++ 한다.
  4. 세자리에서부터는 자릿수 사이의 등차가 같을때만 cnt++한다.

다양한 자릿수 연산의 문제를 풀고있기 때문에 저희는 이런 유형의 문제가 나오면 다 풀 수 있을 거예요~!

반응형
저작자표시 비영리 (새창열림)

'Algorithm > 백준' 카테고리의 다른 글

[백준][c] 11720번: 숫자의 합  (0) 2021.06.26
[백준][c] 11654번: 아스키 코드  (0) 2021.06.26
[백준][C/C++] 4673번: 셀프 넘버  (0) 2021.06.25
[백준][c] 10430번: 나머지  (0) 2021.06.25
[백준][c] 10869번: 사칙연산  (0) 2021.06.25
'Algorithm/백준' 카테고리의 다른 글
  • [백준][c] 11720번: 숫자의 합
  • [백준][c] 11654번: 아스키 코드
  • [백준][C/C++] 4673번: 셀프 넘버
  • [백준][c] 10430번: 나머지
Giken
Giken
𝐒𝐲𝐬𝐭𝐞𝐦.𝐨𝐮𝐭.𝐩𝐫𝐢𝐧𝐭𝐥𝐧("𝐇𝐞𝐥𝐥𝐨 𝐖𝐨𝐫𝐥𝐝!");
  • Giken
    개발자 기켄
    Giken
  • 전체
    오늘
    어제
    • 분류 전체보기 (149)
      • Spring (10)
      • Infra & Messaging (5)
      • Database (6)
        • SQL (5)
      • Vibe Coding(with AI) (1)
      • FrontEnd (3)
      • Algorithm (74)
        • 백준 (71)
        • 프로그래머스 (0)
      • Programming Language (33)
        • C (3)
        • C++ (2)
        • Java (19)
        • PHP (7)
      • 프로젝트 (2)
      • EtcTech (9)
      • 낙서 (5)
  • 블로그 메뉴

    • GitHub
  • 링크

    • GitHub
  • 공지사항

  • 인기 글

  • 태그

    C
    윤년
    SQL고득점키트
    DB
    2588
    평년
    백준
    SQL
    프로그래머스
    1330
    2753
    9498
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Giken
[백준][C/C++] 1065번: 한수
상단으로

티스토리툴바