• 목록
  • 아래로
  • 위로
  • 5
  • 초보
  • 조회 수 236

n = int(input()) #입력받을 숫자의 개수

li = [int(input()) for _ in range(n)] #숫자입력받기

count = 0 #제곱수의 개수

for i in range(0, n): #n로 반복중

  for x in range(1, n+1): #반복

    if li[i] == int(x ** 0.5) ** 2: #조건문

      count += 1 #카운트

print(count) #출력

입력받은 리스트안에 몇개 완전제곱수(1, 4, 9, 16...)가 있는지 출력하는 코드를 만들고 싶습니다.

여기서 5, 1, 35, 25, 55, 44를 입력하면 2가 출력돼야하는데 3이 출력됩니다.

도와주시면 감사합니다.

포함 2명이 추천

추천인 2

댓글 5

초보 작성자
https://level.goorm.io/exam/43152/%EC%99%84%EC%A0%84-%EC%A0%9C%EA%B3%B1%EC%88%98/quiz/1
comment menu
2021.02.17. 10:24

신고

"초보님의 댓글"

이 댓글을 신고 하시겠습니까?

초보 작성자
여기서 문제를 풀고 있었습니다.
comment menu
2021.02.17. 10:25

신고

"초보님의 댓글"

이 댓글을 신고 하시겠습니까?

joyfuI
+1
직접 중간값들을 찍어보면 금방 찾으실 수 있으실 겁니다.
일단 int(x ** 0.5) ** 2 이 부분에 문제가 있구요.
추가적으로 최적화할 부분이 있다면 카운트 이후 루프를 탈출해서 불필요한 연산을 줄일 수 있겠습니다.
comment menu
2021.02.17. 11:13

신고

"joyfuI님의 댓글"

이 댓글을 신고 하시겠습니까?

초보 작성자

n = int(input()) #입력받을 숫자의 개수
count = 0 #제곱수의 개수
for i in range(0, n): #n로 반복중
  number = int(input())
for x in range(1, n+1): #반복
  if number / x == x: #조건문
  count += 1 #카운트
print(count) #출력


이 코드는 5, 1, 35, 25, 55, 44를입력하면 2가 출력되지만
3, 8, 1, 49를 입력하면 3대신 1이출력됩니다.

comment menu
2021.02.18. 08:00

신고

"초보님의 댓글"

이 댓글을 신고 하시겠습니까?

초보 작성자

n = int(input()) #입력받을 숫자의 개수
li = [int(input()) for _ in range(n)] #숫자입력받기
count = 0 #제곱수의 개수
for i in range(0, n): #n로 반복중
  for x in range(1, li[i]+1): #반복
    if li[i] == x * x: #조건문
      count += 1 #카운트
      break #스킵
print(count) #출력

 

이렇게하면되는거였네요ㅎㅎ

감사합니다!

comment menu
2021.02.18. 08:13

신고

"초보님의 댓글"

이 댓글을 신고 하시겠습니까?

권한이 없습니다.
번호 제목 글쓴이 날짜 조회 수
공지 [작업 완료] 설 명절 맞이 서버 업데이트 안내 3 마스터 24.02.11.17:21 1010
공지 [중요] 호스팅 만료와 관련하여 일부 수칙이 변경됩니다. 4 마스터 23.01.14.02:23 4685
공지 [필독] 질문하는 방법 17 마스터 18.02.23.03:09 4482
366 phpmyadmin이랑 FTP 접속이 안되는데... 2 국내산라이츄 19.05.06.00:57 222
365 아이콘 라이센스의 저작자 표기 방법과 Dot icon 관련 사이트 추천 부탁드립니다. 이니스프리 19.05.06.12:46 268
364 일본어 한 단어만 읽어주시면 감사하겠습니다!! 8 image 이니스프리 19.05.07.17:30 341
363 윈도우 서버에 모니위키 설치 가능한가요? 6 제르엘 19.05.13.23:21 286
362 부트스트랩 모달을 사용하면 모바일 환경에서 문제의 소지가 있을까요?? 2 이니스프리 19.05.15.22:26 257
361 [Summernote] 에디터 아이콘 문제 image 260578 19.05.19.21:58 351
360 이 코드 뭔가 이상해요... 18 image 국내산라이츄 19.05.20.16:38 615
359 게시판 푸시 알림을 구현할 수 있을까요? 9 260578 19.05.22.21:38 597
358 Freenom 무료 도메인 3 blueone 19.05.27.10:28 504
357 나무위키 포크 위키 만들기 2 아엠이언맨 19.06.07.11:37 272
356 도메인 기관이전을 하려고 합니다 5 260578 19.06.13.22:18 214
355 구글 광고를 등록하려고하는데.. 8 image 막시모 19.06.26.09:02 245
354 구글 에드센스 등록하려다보니.. 6 image 막시모 19.06.27.21:22 237
353 PyQt 실행시 프리징 현상 관련하여 질문 드립니다! ㅠㅠ 3 이니스프리 19.07.06.03:37 6728
352 무료 아이콘 사이트 추천 부탁드려요 ^^ 4 이니스프리 19.07.09.20:15 229
351 닷홈 인코딩 설정 관련해서 질문 드려요 ㅠㅠ 6 image 이니스프리 19.07.11.00:38 366
350 이베이에서 판매되는 Adobe master collection CS6 정품일까요? 8 이니스프리 19.07.12.17:12 1365
349 1일 간격으로 사이트가 비활성됩니다 1 260578 19.07.16.07:10 190
348 썸네일 추출관련 정규식 표현을 어떻게 해야하나요? 4 image 슬기 19.07.16.16:31 364
347 사이트 로고 디자인을 의뢰하기 전에 질문 드려요 ^^ 이니스프리 19.07.21.22:51 180