이 영역을 누르면 첫 페이지로 이동
컴01기 블로그의 첫 페이지로 이동

컴01기

페이지 맨 위로 올라가기

컴01기

힝입니다.

[백준/C] 1065번 : 한수

  • 2020.08.18 04:21
  • 카테고리 없음

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

 

1065번: 한수

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

www.acmicpc.net

푸는 과정

'1보다 크거나 같고, N보다 작거나 같은 수 들 중에 각 자리가 등차수열을 이루는 수 개수를 출력한다'

 

N =1000이라 하고 생각해보자.

한 자리인 거는 다 한수, 두 자리수도 다 한수

그런데 세 자릿수는 좀 다르다.

각 자리의 값들 간의 차가 같은 경우를 세어주면 되는 것이다.

+ 네자리인 경우는 한수가 아니다 (참고로 이 문제에서 네 자릿수인 경우는 1000 밖에 없다.)

 

#include <stdio.h>

#define true 1
#define false 0

int isHan(int a) {

	int a1, a2, a3;

	if (a < 100)
		return true;
	else if (a>=100 && a<1000)
	{
		a1 = a % 10;
		a2 = (a / 10) % 10;
		a3 = (a / 100);
		if ((a1 - a2) == (a2 - a3))
			return true;
		else
			return false;
	}
	else { // a == 1000
		return false;
	}

}

int main(void) {

	int n;
	int i;
	int cnt = 0;

	scanf("%d", &n);


	for (i = 1; i <= n; i++)
	{
		if (isHan(i) == true)
			cnt++;
	}
	printf("%d", cnt);

	return 0;
}

 

틀렸습니다!

a3 = (a / 100); //  (a/100)%10 이라고 했었다.

 

 

여기를 a3 = (a/100)%10; 이라고 했었다.

맞는 거 같은데 왜 안되지?라고 해서 두 계산의 결과를 비교해보았는데,

N = 1000일때

a/100 ==10, (a/100)%10 == 0으로 서로 다르게 나온다.

따라서 10 0 0 , 0 0 0으로 계산되어

isHan의 값이 전자는 false, 후자는 true가 나오게 된다.

세 자리 수인 경우가 딱 한 가지 있었는데, 그걸 고려하지 않아서 틀렸던 것이다.

그래서 그냥 네 자리인 경우에는 isHan이 false가 되도록 해주었다.

댓글

이 글 공유하기

  • 구독하기

    구독하기

  • 카카오톡

    카카오톡

  • 라인

    라인

  • 트위터

    트위터

  • Facebook

    Facebook

  • 카카오스토리

    카카오스토리

  • 밴드

    밴드

  • 네이버 블로그

    네이버 블로그

  • Pocket

    Pocket

  • Evernote

    Evernote

다른 글

다른 글 더 둘러보기

정보

컴01기 블로그의 첫 페이지로 이동

컴01기

  • 컴01기의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 태그
  • 방명록

카테고리

  • 분류 전체보기 (87)
    • 📰논문 리뷰 (16)
    • 🍒회고록 (4)
    • 🖤네이버 ai tech (0)
    • ✨글쓰는힝 (1)
    • 🔥취준일기 (2)
    • 🎲유니티 (2)
    • 🔨삽질 (10)
    • 📚 서적 리뷰 (4)
    • 🐹알고리즘 (4)
    • 😎정리하는 카테고리 (4)
    • 📝CS 공부 (6)
      • 운영체제 (1)
      • 네트워크 (4)
      • 리팩토링 (1)
    • etc (22)
      • 혼공단 (7)
      • Spring (7)
      • JS (1)
      • OpenCV (2)
      • Unity (5)

최근 글

인기 글

댓글

태그

  • 혼공머신
  • 혼공SQL
  • 혼공단
  • github
  • 회고록
  • 백준
  • unity
  • 혼공학습단

나의 외부 링크

  • Github
  • Youtube

정보

힝님의 컴01기

컴01기

힝님

방문자

  • 전체 방문자
  • 오늘
  • 어제

블로그 구독하기

  • 구독하기
  • RSS 피드

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © 힝님. Designed by Fraccino.

티스토리툴바