디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

횽들..귀찮아도 이거하나만 봐줘..ㅜㅜ

망캐ㅠ갤로그로 이동합니다. 2010.08.30 23:12:05
조회 124 추천 0 댓글 6


오일러 프로젝트라고... 프로그래밍 언어로 코딩해서 푸는 문제거든?..

문제는 짤방이구..

내가 어떻게 풀었냐면..

예를 들어 a= 2일때, b가 2에서 100까지 증가함에 따라 작은것부터 늘어놓으면

2^2  2^3  2^4 ........................ 2^100 이잖어..?


그리고 a=16 일때, b가 2에서 100까지 증가함에 따라 작은것부터 늘어놓으면

16^2  16^3 ......................... 16^100 까지 있을꺼잖아..

근데 16 = 2^4 이니까, 다시 쓰면

2^8  2^12  ........................ 2^400

이중에서, 2^8, 2^12 ... 2^100(=16^25) 까진 중복이니까 카운팅을 안하는거야..


일반화 시키면

어떤 자연수 a^b가 에서 자연수 a가  c의 n제곱일때,  n*b <= 100 의 조건을 만족하면, 중복이란 소리니까 카운팅을 하지 않는다 (단, 2<= a, b <= 100)

근데 왜 숫자가 정답보다 많이 나올까...

내가 뭐 빼먹은거 있나?..ㅜㅜ 좀 도와줘..엉엉










// problem29.cpp : 콘솔 응용 프로그램에 대한 진입점을 정의합니다.
//

#include "stdafx.h"
#include "time.h"
#include "math.h"

int squareN(int a, int factor);  // factor 가 a 의 임의의수 n 제곱근인지 확인하는 함수. 제곱근이면, n 을 반환, 아니면 100보다 크수 반환.

int _tmain(int argc, _TCHAR* argv[])
{
 double start, finish;  //걍 시간잴때 쓰면 변후
 start = clock();        //걍 시간 재는거
 
 int arr_test[101] = {0,0};  // 1이면, 카운팅, 0이면 카운팅에서 제외. 이중 arr_test[0], arr_test[1] 은 사용하지 않음.
 int answer = 0;             // 답!!!!!

 for(int a = 2; a <= 100; a++)
 {
  printf("%3d : ", a);                 // 실제 문제에서의 a
  for(int b = 2; b <= 100; b++)  // 실제 문제에서의 b
  {
   arr_test[b] = 1;                 // 일단 a^b 의 값이 유일하다고 가정하고, 1 대입

   for(int factor = 2; factor*factor <= a; factor++)   // 2이상, 루트a 이하의 자연수중에서 제곱근이 있는지 찾는 부분
   { 
    if(squareN(a, factor) * b <= 100)                 // 만약 n 과 b의 곱이 100이하이면, 중복이니까 arr_test[b]에 0을 넣어, 중복효과 제거
    {
     arr_test[b] = 0;
    }
   }
   printf("%d", arr_test[b]);                                 // 1이면 중복 아님, 0이면 중복

   answer = answer + arr_test[b];                        // 1과 0을 계속 더해서 답을 구함.
  }
 }

 printf("The answer is %d\\n", answer);

 finish = clock();  // 걍시간구할때 쓰는거
 printf("Time : %.3lf", (finish-start)/CLK_TCK);  //걸린 시간 출력

 getchar();  // 콘솔창 꺼지는거 방지
 return 0;
}

int squareN(int a, int factor)
{
 int n = 0;  //n제곱 초기화  // 2부터 유효한 값임
 int copy_a = a;   //a 저장용

   while(copy_a%factor == 0)        // a를 factor 로 계속 나눠서 factor 가 a의 임의의 n 제곱근인지 확인. 여기서 n 도 구함.
   { 
    copy_a = copy_a/factor;
    n = n + 1;
   }
 if((n == 0) || (n == 1) || (copy_a != 1))   // 제곱근이 아닌경우, 100보다 큰 10000 반환.
 {
  return 10000;
 }
 return n;  // 제곱근이면 n 을 반환
}

추천 비추천

0

고정닉 0

0

원본 첨부파일 1

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 끝까지 다 본 걸 후회하게 만든 용두사미 드라마는? 운영자 25/07/07 - -
338078 svn에 LoC 통계 보는 기능은 없냐? ㅁㄴㄻㄹ갤로그로 이동합니다. 12.11.20 46 0
338072 올드 게임 제기드 얼라이언스 2 소스 코드 [1] ☎2.51™갤로그로 이동합니다. 12.11.20 44 0
338071 이 문제 어떤자료구조 써야해? [10] 도와줭ㅠ(175.244) 12.11.20 156 0
338068 상상아 보거라 69(202.30) 12.11.20 29 0
338067 웹브라우저 레이아웃 엔진이나 자바스크립트 엔진 건드려 본 형 있음? [2] 하앍뿌갤로그로 이동합니다. 12.11.20 69 0
338066 고딩때 유부녀랑 두달 사귄 썰 풀어볼께연 [1] 멘탈붕괴_갤로그로 이동합니다. 12.11.20 158 0
338065 자료구조나 알고리즘 책살려고하는데앙 [2] ㅂㅈㄷㄱㅡ~ㅡ갤로그로 이동합니다. 12.11.20 124 0
338060 프로그래밍의 프짜도 모르는데 어디부터 해야되냐고 아까부터 이쁨돋귀 ㅄ아 [42] 상상(175.123) 12.11.20 244 0
338059 근데 백준 그냥 백수라고하기엔 뭔가 이상함 티버애니갤로그로 이동합니다. 12.11.20 35 0
338058 악성코딩스타일로 구현한 피보나치. [1] 영꼰이갤로그로 이동합니다. 12.11.20 80 0
338057 아... 나도 다 내려놓고 푹 쉬고 싶다 [1] 워킹푸어(182.211) 12.11.20 43 0
338056 카카오톡을 통해서 뜬 드래곤플라이트를 통해 느끼는 점. [5] ☎2.51™갤로그로 이동합니다. 12.11.20 177 0
338053 요즘 암것도 하기싫다 [2] ㅁㅁ(211.244) 12.11.20 56 0
338052 파싱!! [2] 컴공,(203.253) 12.11.20 68 0
338051 윈도우 8 써 본 횽들 있으면 후기 좀 [2] 워킹푸어(182.211) 12.11.20 80 0
338050 J쿼리 개쩐다;;/;.;;; [3] ㅇㄴㅁㅇㄴㅁ(59.11) 12.11.20 91 0
338049 디씨 제로보드로 만든건가? [2] ㅁㅁ(211.244) 12.11.20 80 0
338048 악성코딩 어록 하나 나왔다 [17] c(175.208) 12.11.20 205 0
338047 다들 야근이 왜 싫어함? [6] ㅇㄴㅁㅇㄴㅁ(59.11) 12.11.20 130 0
338045 해킹 연습 사이트는 어떠냐??? [4] 워킹푸어(182.211) 12.11.20 143 0
338044 오늘부터 C언어 공부시작한다고 일기쓰면 안되냐? [8] 69(202.30) 12.11.20 82 0
338043 자동어시스트 기능이 없으니까 프로그래밍 못하겠네 ㅉㅉ [1] ㅇㄴㅁㅇㄴㅁ(59.11) 12.11.20 38 0
338042 딥웹인가 하는건 죄다 불법 사이트야?? [1] 워킹푸어(182.211) 12.11.20 69 0
338041 횽들 오늘 연차보상제도 관련 국회 입법 처리안 봤음여...? [5] 11(121.126) 12.11.20 50 0
338040 피보나치 죳까고 재귀함수가 [3] d(125.177) 12.11.20 69 0
338039 니들 적금 월급몇퍼 붓냐? [2] ㅁㅁ(110.70) 12.11.20 79 0
338038 자바스크립트랑 j쿼리만 하면 html5 따위 개졎밥? [2] ㅇㄴㅁㅇㄴㅁ(59.11) 12.11.20 95 0
338037 내가 만들려는 사이트가 익명성이 쩌는 이유를 알려주마 [6] 워킹푸어(182.211) 12.11.20 74 0
338036 혹시 회사 입사할때 실기시험처럼 나오는 곳있냐?ㅁ [1] ㅇㅇ(121.163) 12.11.20 44 0
338034 그럼 이런 사이트는 어떠냐?? [1] 워킹푸어(182.211) 12.11.20 41 0
338033 대졸 erp 초봉 4000 ㅇㅇ ㅁㄴㅇㅁㄴㅇ(59.11) 12.11.20 131 0
338032 익명성을 완벽히 보장하고 상담 사이트는 어떠냐? [5] 워킹푸어(182.211) 12.11.20 54 0
338031 리눅스 입문은 뭐로 해야 개념? [1] ㅁㄴㅇㅁㄴㅇ(59.11) 12.11.20 86 0
338030 로또 될 확률보다 당장 내일 알거지가 될 가능성이 더 높겠다. 영꼰이갤로그로 이동합니다. 12.11.20 25 0
338029 진지하게 투잡해야겠다. [14] 영꼰이갤로그로 이동합니다. 12.11.20 104 0
338028 내인생은 사랑돋긔보다 못하니깐 걍 오늘부터 집가면 C나 붙잡고 놀아야지 [5] 69(202.30) 12.11.20 113 0
338027 만약 10억짜리 로또가 당첨된다면? [4] 워킹푸어(182.211) 12.11.20 66 0
338026 윈도우7 적응이 안된다 이모군(175.114) 12.11.20 19 0
338025 그냥 좀 비슷한 사례는 [1] 영꼰이갤로그로 이동합니다. 12.11.20 50 0
338024 이게 왜 55가 출력이 되는거지...................... [6] d(125.177) 12.11.20 58 0
338023 [리눅스 질문] 마우스 클릭하여 복사된 내용 저장되는 클립보드 공간이요 컴공학생(203.252) 12.11.20 496 0
338022 근데 토렌트 사이트 존나 애매해. [6] 영꼰이갤로그로 이동합니다. 12.11.20 126 0
338021 경제 뉴스를 볼때마다 답답하다 워킹푸어(182.211) 12.11.20 27 0
338020 관리 알바 까지 투잡 뛰면.. 부끄곰갤로그로 이동합니다. 12.11.20 40 0
338019 자기 개발 책에 나온 말을 인용하고자 합니다. 워킹푸어(182.211) 12.11.20 33 0
338018 밥먹고 왔다. 근데 세미나 같은거 다니는건 어찌 생각해?? [5] 워킹푸어(182.211) 12.11.20 57 0
338017 도시생활 접고 귀농 하려는 프갤러들은 봅니다. [1] 부끄곰갤로그로 이동합니다. 12.11.20 46 0
338015 얘 근육 존나섹시하지않냐 [2] ㅁㅁ(211.244) 12.11.20 92 0
338014 너네 초봉 2550 넘은 애들 있음? 대기업 말고 [11] 영꼰이갤로그로 이동합니다. 12.11.20 229 0
338013 39 C1 A4 C2 58 D5 E0 AC F6 C2 E4 B2 [8] ㅁㅁ(211.244) 12.11.20 100 0
뉴스 포레스텔라, 오늘(9일) 완전체 신곡 ‘Everything’ 발매! 디시트렌드 07.09
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2