[구현] 4673 셀프 넘버

알고리즘/백준
2024. 4. 11. 01:01
728x90

d(n)이라는 함수를 만들어서 리스트에 셀프넘버가 아닌 것들을 저장하자

라는 생각으로 접근

 

시도1

lst = []
def d(n): #셀프넘버가 아닌 것들
num = n + int(n/1000) + int(n%1000/100) + int(n%100/10) + n%10
return num
n=0
while(True):
n += 1
if d(n) > 10000:
break
lst.append(d(n))
for i in range(1, 10001):
if i not in lst:
print(i)

 

아무리 생각해도 맞는거 같은데 자꾸 출력이 이상하게 나와....

 

그래서 왜 이상한지 손으로 노가다로 풀어봤다

 

저 코드를 실행하면 9999가 출력되는데 n = 9972일때 d(n) = 9999를 반환

하지만 내 코드에서는 n이 9972까지 가지 않고 반복문이 멈춤.

 

그 이유는 n = 9969가 되면 d(n) = 9969 + 9 + 9 + 6 + 9 = 10002가 되서 if d(n) > 10000 조건에서 반복문이 종료된다.

 

아 그러면 while문 대신 for 문으로 10001까지 반복해서 d(n)을 실행하고 그 중에서 d(n)이 10000을 넘어가는 걸 예외로 두면 되겠다.

 

시도 2 (통과)

lst = []
def d(n): #셀프넘버가 아닌 것들
num = n + n//1000 + n%1000//100 + n%100//10 + n%10
return num
for i in range(1,10001):
if d(i) <= 10000:
lst.append(d(i))
for i in range(1, 10001):
if i not in lst:
print(i)

 

 

728x90

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

[구현] 11866 요세푸스 문제 0  (0) 2024.04.12
[구현] 2563 색종이  (1) 2024.04.12
[파이썬] 10870 피보나치 수 5  (0) 2024.04.10
14916 거스름돈  (0) 2024.04.10
28014 자바  (0) 2024.04.09
'알고리즘/백준' 카테고리의 다른 글
  • [구현] 11866 요세푸스 문제 0
  • [구현] 2563 색종이
  • [파이썬] 10870 피보나치 수 5
  • 14916 거스름돈
hapBday
hapBday
hapBday
개발자로 성장하기 위한 기록들
hapBday
전체
오늘
어제
  • 분류 전체보기 (199)
    • CS (12)
      • 컴퓨터네트워크 (11)
      • 운영체제 (0)
      • 분산 시스템 (0)
      • 데이터베이스 (1)
    • Spring (45)
      • Spring 핵심 원리 (13)
      • Spring MVC (15)
      • Spring DB (12)
      • Spring Security (4)
    • JPA (14)
    • 알고리즘 (30)
      • 프로그래머스 (6)
      • 백준 (20)
    • Design Pattern (0)
    • 언어 (5)
      • JAVA (5)
    • ASAC 웹 풀스택 (38)
      • Spring Boot (21)
      • React (0)
      • DevOps (8)
    • 트러블슈팅 (14)
    • DevOps (5)
      • Docker (5)
    • ETC (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록
  • github

공지사항

인기 글

태그

  • spring security
  • 백준
  • cookie
  • docker workflow
  • docker best practices
  • 구현
  • multi-stage
  • JPA
  • aws lambda
  • currency control
  • basicerrorcontroller
  • Session
  • 3-layerd 아키텍쳐 패턴
  • CORS
  • 인프런
  • docker
  • x-lock
  • 김영한
  • Spring
  • 트랜잭션
  • CSRF
  • 프로그래머스
  • s-lock
  • Java
  • MVC
  • jwt
  • 오블완
  • spring boot
  • 티스토리챌린지
  • S3

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.3.0
hapBday
[구현] 4673 셀프 넘버
상단으로

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.