• 카테고리

    질문 & 답변
  • 세부 분야

    알고리즘 · 자료구조

  • 해결 여부

    미해결

9. 모두의 약수 관련 질문입니다

21.06.16 15:15 작성 조회수 247

0

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

#include <iostream> int main() { int array[50000]; int a; scanf("%d",&a); for (int i = 1; i <= a; i++){ for (int j = i; j <= a; j=j+i){ array[j]++; } } for (int i = 1; i <= a; i++) { printf("%d ",array[i]); } return 0; }

다음과 같이 코딩을 작성했는데 Time limited 오류가 발생합니다ㅠㅠ 어디가 문제인거죠?

답변 1

답변을 작성해보세요.

0

안녕하세요^^

int array[50001]로 해서 전역변수로 잡으세요. 50000번 인덱스 번호가 생겨야 합니다.

#include <iostream> 
int array[50001]; 
int main() { 
	int a; 
	scanf("%d",&a); 
	for (int i = 1; i <= a; i++){ 
		for (int j = i; j <= a; j=j+i){ 
			array[j]++; 
		} 
	} 
	for(int i = 1; i <= a; i++) { 
		printf("%d ",array[i]);
	} 
	return 0; 
}

다음 부터 코드를 올리실 때는 {;} 버튼을 이용해서 위에 저처럼 보기 좋게 올려주시면 감사하겠습니다.

김혁수님의 프로필

김혁수

질문자

2021.06.18

넵 감사합니다!