문제를 푸시면 기념품을 드립니다. ^0^/

김지완의 이미지

문제를 푸시면 사이냅소프트에서 기념품을 드립니다.

...원하신다면 입사특전도 드립니다.


피보나치 수에 대한 문제입니다. 피보나치 수는 아래와 같이 정의됩니다.
f(1) = 1
f(2) = 2
f(3) = f(1) + f(2) = 1 + 2 = 3
f(4) = f(2) + f(3) = 2 + 3 = 5
f(5) = f(3) + f(4) = 3 + 5 = 8
...
f(n) = f(n-2) + f(n-1), n>=3
 
a와 b라는 두수가 주어져 있을때 두수사이에는 몇개의 피보나치 수가 있을까요?
예를 들어 10과 100 사이에는 총 5개(13, 21, 34, 55, 89)의 피보나치 수가 있습니다.
 
12345678999과 99987654321 사이에도 몇개의 피보나치 수가 있습니다.
이 구간내의 모든 피보나치수를 더한 값이 기념품을 받을 수 있는 열쇠입니다.

정답을 아시면 아래 URL로 접속하세요.

http://{정답}.synap.co.kr

PS. 댓글에 정답을 남기지는 말아주세요. 다른 사이트에 올리는 것은 환영합니다.

semmal의 이미지

...

------------------------------
How many legs does a dog have?

------------------------------
How many legs does a dog have?

익명 사용자의 이미지

제가 이 문제를 O(1)로 풀었습니다.

힌트를 드리자면, 구글신에게 피보나치 수열 목록이 뭐냐고 물어보세요.

익명 사용자의 이미지

O(n)은 알겠는데 O(1)도 가능합니까?

terzeron의 이미지

모든 피보나치 수의 목록을 알고 있으면, a와 b의 차이만큼의 상수값만큼의 cost가 필요하므로
O(1)이 되겠죠.

근데, 구글에 물어보는 행위 자체를 O(1)로 표현하신 것일 수도 있겠다는 생각도 듭니다.

익명 사용자의 이미지

아하.. 피보나치 수를 테이블로 만들어놓으면
O(ln n)으로 검색이 가능하겠군요.

redneval의 이미지

수학적으로 O(1)으로 풀 수 있습니다.

"댓글에 정답을 남기지는 말아주세요"라고 해서,

더 설명하지는 않겠습니다. :)

--------------------Signature--------------------
"What can change the nature of a man?"

MasterQ의 이미지

수학적으로 어떻게 푸나요? 궁금해서 물어봅니다~ 여기다 올리기 뭐하시면 쪽지로라도 좀 알려주세요~~ 궁금합니다.

익명 사용자의 이미지

f(48) < 12345678999 < f(49),
f(53) < 99987654321 < f(54)
그럼.. http://5.synap.co.kr ??
읔;; 아닌가보다.. =3==33

warpdory의 이미지


http://{정답}.synap.co.kr

12345678999과 99987654321 사이에 있는 모든 숫자를 {정답}에 대입해서 wget 으로 돌려보고, 404 에러 메시지가 안 뜨는 것에 접속하는 것도 ......

해보려다가 ... 혼날까봐 안 해 봤습니다. ..

---------
귓가에 햇살을 받으며 석양까지 행복한 여행을...
웃으며 떠나갔던 것처럼 미소를 띠고 돌아와 마침내 평안하기를...
- 엘프의 인사, 드래곤 라자, 이영도

즐겁게 놀아보자.
http://akpil.egloos.com


---------
귓가에 햇살을 받으며 석양까지 행복한 여행을...
웃으며 떠나갔던 것처럼 미소를 띠고 돌아와 마침내 평안하기를...
- 엘프의 인사, 드래곤 라자, 이영도

즐겁게 놀아보자.

익명 사용자의 이미지

정답을 찾아서 들어갔더니 회사서 막았더군요.. :-(

김지완의 이미지

안녕하세요. 사이냅소프트의 김지완 입니다. ^^
저희쪽 사이트에서는 막은 적이 없는데....

어떤 말씀이신지요~?? 자세히 알려주시면 처리 해 드리도록 하겠습니다~!! ^0^/

Stand Alone Complex의 이미지

심심해서 한번 짜봤습니다.
약 28x 까지 해봤지만 속도가 답답해서 그냥 꺼버렸네요.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
 
int DoIt(void);
 
int main(void)
{
	DoIt();
	return 0;
}
 
int DoIt(void)
{
	unsigned int i;
 
	for(i=0;i<2000000000000000000;i++)
	{
 
		char telnet[200], ii[200];
 
		itoa(i, ii, 10);
 
		strcpy(telnet, "telnet ");
		strcat(telnet, ii);
		strcat(telnet, ".synap.co.kr 80");
		printf("%s\n\n", telnet);
		system(telnet);
	}
 
	return 0;
}

RET ;My life :P

kalevala의 이미지

오랜만에 이런 걸 푸니 재밌군요. 피보나치야 수가 급격히 커지니 수행시간이 그리 길진 않지만...

두번째 암호 문제는 살짝 당황했지만 조금 생각하니 쉽게 풀리네요. 아직 학부 2년생이라 암호학

수업을 듣지 못 하였지만 선배들 말씀으로는 "수업 자체가 암호, 수업내용을 이해하는것이 수업의 일환"

이라는 말까지 나돌고 있으니 겁을 먹게 되는 건 당연한 것 같습니다. 비록 학점을 생각해서는 듣고 싶은

마음이 싹 달아나지만...

암호학에 비할 수는 없는 문제였다손 치더라도 이런 문제를 올려주셔서 정말 감사드립니다^^;

후배들한테도 한 번씩 풀어보라고 시켜야 겠습니다^^;;;

p.s 그런데 기념품은 무얼 주나요;;;

김지완의 이미지

문제를 푸셨다니 축하 드립니다. ^^
그리고 문제에 관심 가져주셔서 대단히 감사드립니다.

문제를 모두 푸시면 몇 일 안으로 기념품에 대한 답변을
받아 보실 수가 있습니다. ^0^

Fe.head의 이미지

정답 적어서 들어 갔는데..
다른 문제 풀으라고 나오네요.

정확한 문제 뜻을 몰라.. 포기..

-----------------------
과거를 알고 싶거든 오늘의 네 모습을 보아라. 그것이 과거의 너니라.
그리고 내일을 알고 싶으냐?
그러면 오늘의 너를 보아라. 그것이 바로 미래의 너니라.

고작 블로킹 하나, 고작 25점 중에 1점, 고작 부활동
"만약 그 순간이 온다면 그때가 네가 배구에 빠지는 순간이야"

kalevala의 이미지

영문자를 숫자로 치환하여 양변의 합이 일치하는 모든 케이스에 대하여

좌변의 값을 (SYNAP + SOFT 이지요) 전부 더 하면 됩니다.

엉성한 설명이더라도, 부디 이해가 되시길 바랍니다. ;_;

select99의 이미지

한번풀면 상품줄줄알았더니....

드어가보니 또있고.. 또풀어들어가니 또있고..ㅡㅡ;;

그리고 첫번째 들어가서 나오는문제... 숫자끼리 같을수 없다 라는조건도 없는데..

풀고보니.. 답이 안맞는.. 아마도 같지 않다는 조건하에 푼듯하여... 숫자들이 같지 않다는조건하에 푸니..

그게답이네요..

ssehoony의 이미지

그렇군요. 어쩐지 이상하다 싶었어요.
문제에 조건이 없는데 그걸 생각하고 푼 사람들은 어떻게 아신거죠??

select99의 이미지

그러게요..

대충 넘겨짚고 맞추어보라는의미 인지.. 아니면 출제자의 실수인지..

익명 사용자의 이미지

세번째 coffee문제 이거 단어 대문자로 적어야 하나요? 아님 소문자?

분명히 목록을 뽑아냈는데 답이 아니라고 나오네요-_-;

단어 한두개가 빠진거 같은데 어디서 빠진건지-_-;

김지완의 이미지

대소문자 구분없이 정답 확인 처리 되도록 되어 있습니다. ^0^

다즐링의 이미지

윈도우용입니다.
cmd 실행
nslookup
server www.synap.co.kr
ls -a synap.co.kr

-------------------------------------------------------------------------------------------------------
Life ... http://iz4u.net/blog/

------------------------------------------------------------------------------------------------
Life is in 다즐링

익명 사용자의 이미지

제대로된 딴지 ㅋ

다즐링의 이미지

답은 일부러 안적었어요 -_-;

-------------------------------------------------------------------------------------------------------
Life ... http://iz4u.net/blog/

------------------------------------------------------------------------------------------------
Life is in 다즐링

김지완의 이미지

제대로 한방 먹었습니다~!!
정말 생각도 못 한 방법입니다~ ^^;;

이왕 거기까지 하신거 안쪽의 문제도 풀어 보심이 어떨까용~?? ^^

다즐링의 이미지

기본적인 것이 안된곳에서 제대로 된 문제를 낼꺼라고 생각하지 않습니다.

-------------------------------------------------------------------------------------------------------
Life ... http://iz4u.net/blog/

------------------------------------------------------------------------------------------------
Life is in 다즐링

김지완의 이미지

저희가 신경쓰지 못 한 부분을 지적해 주셔서 감사합니다.

첫 문제의 경우는 프로그래밍이 아니더라도 엑셀같은 프로그램으로도
풀이가 가능한 문제입니다. ^^

그리고 저희가 생각하지 못 한 또 다른 여러가지 풀이 방법이
존재 할 것이라고 생각이 됩니다..

저는 피보나치의 경우... 미리 인덱스된 값을 이용해서 재귀 호출을 최대한 막았습니다...

저희는 윗 분처럼 네트워크 지식이 많으신 분을 포함해
서로 중복되지 않는 다양한 지식,지혜를 가지신 분을 원합니다^^

다시 한번 감사드립니다.

Stand Alone Complex의 이미지

덕분에 유용한 기술(?) 배웠네요.
감사합니다. :)

RET ;My life :P

김일영의 이미지

그런게 있었군요. 앞으로 잘 써먹겠습니다.

winner의 이미지

Java로 푼 저에게 제대로 일침을...

절차탁마의 이미지

정말 대단하십니다.
그러면 이걸 방지하는 방법도 있나요?
아시는분???

deisys의 이미지

터미널 작업중인데.. wget으로 바로 받기 뭐해서(자바스크립트ㅠㅠ) 여기 올립니다. 7z 으로 압축했고 비밀번호는 두번째 문제 정답입니다. ;-)

--
Deisys, in the middle of the world, being with you . . . . . .

댓글 첨부 파일: 
첨부파일 크기
Package icon words.zip29.39 KB
deisys의 이미지

생각해보니 도움이 안되는군요.. ( 더덜 )
음, 윈도 바탕화면에 받아둔 파일을 저쪽 터미널로 옮기는데 어떤 방법이 젤 간편한가요? ㅠ_ㅠ
winscp 깔아야하나.. :'(

--
Deisys, in the middle of the world, being with you . . . . . .

ssehoony의 이미지

그냥 copy & paste 하면 되는데요.
vi 열고 set paste 하고 insert 모드에서 붙여 넣기~
(텔넷 클라이언트가 붙여넣기 지원안하나요? 전 putty 사용하는데...)

deisys의 이미지

고민해 봤습니다. ... 뭐 10000라인 정도는 가볍게 붙여넣어 지려나요. ㅎㅎㅎ
일단 어떻게든 답은 다 구해서 기념품 기대하고 있습니다. 히히~

--
Deisys, in the middle of the world, being with you . . . . . .

esrevinu의 이미지

암호문제는 컴퓨터로 풀어야 되는건가요?

number3의 이미지

문제에 답이 있어서 간단하게 ls로 풀었습니다.
요즘 머리 아픈 게 싫어서, 답이 12자리던군요.
그냥 문제를 풀편 뭐가 나오나 궁금해서요..

그런데 더 골치 아픈거네요.. 헐헐..

dragonkun의 이미지

웅.. 세번째 문제 어렵네요.. ㅠ_ㅠ
이거 하다보니 오기가 생겨서 이쯤에서 포기하기도 뭐하고..
풀 때 까지 잠 못잘것 같습니다;;;
----------------------
Emerging the World!

Emerging the World!

박민권의 이미지

님도 손으로 풀고 계신건가요? ㅡㅡ;

사랑천사의 이미지

왜 저런 것을 보니까.. (사실 저런 것이.. 여기 글 쓰시는 분들의 말씀들..) 해커스랩이 생각 나는 건지 모르겠습니다.
----
Lee Yeosong(이여송 사도요한)
E-Mail: yeosong@gmail.com
HomePage: http://lys.lecl.net:88/
Wiki(Read-Only): http://lys.lecl.net:88/wiki/
Blog: http://lys.lecl.net:88/blog
MSN: ysnglee2000@hotmail.com
----
절이 싫으면 중이 떠나는 것이 아니라, 절이 싫으면 중이 절을 부숴야 한다.
때때

사람천사

박민권의 이미지

이거 손으로 두세시간에 풀 수 있는 건가요?
상당한 숫자들을 대입 해야 할거같은데;;
핵심을 못잡고 있는건지 답답하네요 ㅠㅠ
확 프로그램짜서 풀어버리고 싶은 욕망이 ㅠ_ㅠ

김지완의 이미지

사이냅소프트 입니다~!! ^0^/
개인적인 소견으로는 가능하시면 프로그램으로 하시는 편이
좋지 않을까 싶습니다..

select99의 이미지

프로그램으로 돌려도 몇분걸리던데.. 그걸어째 손으로 풀어요..ㅡ,.ㅡ;;

suns1997의 이미지

답이 맞는거 같은데

kirrie의 이미지

두번째까지는 쉽게 풀었는데, 세번째에서 좀 막히네요.. -_-;;

--->
데비안으로 대동단결!

--->
데비안 & 우분투로 대동단결!

익명 사용자의 이미지

이거 낚시입니다. 커피석잔을 넘기게 되면 가면 결국 일반화된 해법을 요구함과 동시에 email 면접으로 들어갑니다.

그나저나 왜 전 2단계 엉클샘은 당신을 원한다가 3단계 커피석잔보다 더 어렵게 느껴질까요?

Stand Alone Complex의 이미지

정말이네요. 마지막에 도달했을때 허탈했습니다.

RET ;My life :P

deisys의 이미지

입사를 원하지 않아도 기념품은 준다, 고 하지 않습니까! 효효효 ~ ;-)

--
Deisys, in the middle of the world, being with you . . . . . .

익명 사용자의 이미지

이제 자야겠습니다 :)
내일 출근 모드라 =33=3

서지원의 이미지

mozart-oz를 쓰면 좀 쉽게 할 수 있습니다. mozart oz에 익숙지가 않아서 커피 문제는 python으로 oz source를 generate해서 풀려고 했는데, oz의 commandline interface를 잘 몰라서 하다 말았네요. 혹은 pypy의 constraint solver를 써도 비슷하게 쉽게 될겁니다. 뭐 이미 푸신 분들은 대부분 그 비슷한 linear programming library같은걸 써서 했겠지만요.

혹시 oz나 pypy로 coffee문제를 푸신 분은 한 1~2주일쯤 뒤에 여기에 포스팅해 주셔도 좋을 것 같습니다. (제가 좀 궁금해서요...)

totohero의 이미지

세번째는 아직 못봤고-.- 두번째 문제는 며칠쯤 기다렸다가 지난번처럼 code golf를 해보면 재밌을거 같네요.

그나저나 두번째 문제에서 좌변의 숫자의 합이란 (SYNAP + SOFT)의 모든 합을 구하는 건가요? (그럼 우변이랑 같은거 아닌가?)

아니면 S+Y+N+A+P+S+O+F+T의 모든 합을 구하는 건가요? 헷갈리네요.

ssehoony의 이미지

전자의 값을 구하는게 맞아요(우변이랑 같죠)
저도 다른 분의 답글 보고 알았는데
같은 숫자는 두번 선택할 수 없습니다. 비복원 추출이네요.
즉 S 가 1 이면 O, F, T 등등은 1이 될 수 없다는거죠. 문제의 설명이 부족하네요.

ByB의 이미지

예전 구글이란 업체가 유명해 지기전 직원을 뽑기위해 썻던 방법이네요.
한동안 저희 회사에서도 그 문제 풀기가 유행했던 적이 있었는데 말이죠.
물론, 그게 직원을 뽑기위한 것이라고는 나중에 알았지만요.

아, 사이냅이란 이름이 익숙하다고 생각을 했는데, 알고 봤더니
지금 제가 속한 팀의 다른 팀원이 개발하고 있는 기능을 위해 제휴하고 있는 업체이름 이더라구요..
ㅎㅎㅎ 어쩐지..

뭐, 문제 풀이하고는 상관없는 댓글 이었네욤.
솔직히 전 머리가 나빠서 이런거 못풀어욤. ^^a;;
----------------------------------------------------------=>
Be supercalifragilisticexpialidocious, run for your life!

----------------------------------------------------------=>
Be supercalifragilisticexpialidocious, run for your life!

ssehoony의 이미지

커피 문제는 난이도 때문에 못 푸는 것 보단 시간을 좀 투자 해야 한다는게 부담 스럽네요.

상품이 뭔지도 모르고, 입사가 된다면 지금 회사보다 연봉을 더 잘 줄지 어쩔지도 모르는데 시간을 투자한다는게 쉽지 않군요.
혹시 훌륭한 개발자를 원하신다면 문제를 꼭 풀어야겠다는 동기 부여를 할만한걸 문제 풀기 전에 제시하는건 어떤가요?
그렇게 하면 문제에 도전하시는 분이 좀 늘어날 것 같은데요.

nightz의 이미지

2번째 까지는 풀었는데..
3번째도 풀어야 하나 고민 중입니다..
업무시간 했더니.. 눈치가 ^^

superwtk의 이미지

피보나치 수열은 다음과 같이 정의됩니다.

--------------------------------------------------------------------------------
http://blog.superwtk.com

M.W.Park의 이미지

저도 언듯 좀 이상하다 했는데...
적절한 지적이십니다.

-----
오늘 나의 취미는 끝없는, 끝없는 인내다. 1973 法頂

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

mangg의 이미지

5.synap.co.kr 해도 안되는데요??

중간에 5개 있는거 아닌가요??????
아무리 해도 5개가 맞는데 페이지가 안열리는 이유가 ㅠㅠ

-------------------
나는 Copy&Paster 이다. 나의 화려한 기술 조합에 모두들 나를 두려워 한다. 나도 코드 Maker 이고 싶다.

-------------------
나는 Copy&Paster 이다. 나의 화려한 기술 조합에 모두들 나를 두려워 한다. 나도 코드 Maker 이고 싶다.

ssehoony의 이미지

사이에 있는 수의 개수가 아니고 사이에 있는 수들의 합입니다. 꽤 큰 수가 나오죠

select99의 이미지

흠... 마지막단계 이거 도는데 장난아닌데요....

제컴도 제법 괜찮은데서 도렸는데.. 시간이 엄청걸리는군요...

위엣님말씀들어보니.. 어차피 풀어도 상품안준다고 해서.. 소스올려봅니다...

첫번째 는.... 스크립트입니다.
-----------------------

#!/usr/bin/perl
#use bigint;
 
my $atotal, $btotal   = 0;
my ($a, $b) = (0, 1);
 
for (;$a <= 99987654321;)
{    print "$a\n";
    $atotal += $a if $a <= 99987654321;
    $btotal += $a if $a <= 12345678999;
    ($a, $b) = ($b, $a+$b);
}
print "result : ".($atotal-$btotal)."\n";

--------------------------------------------

두번째는...(C 소스인건 아시죠?)
----------------------------------------------------

int main( void )
{
	int s, y, n, a, p, o, f, t, w, u;
	int xx, yy; 
	double tot=0;
 
 
	for( s = 1; s < 10; s++ )
		for( y = 1; y < 10; y++ )
			for( n = 0; n < 10; n++ )
				for( a = 0; a < 10; a++ )
					for( p = 0; p < 10; p++ )
						for( o = 0; o < 10; o++ )
							for( f = 0; f < 10; f++ )
								for( t = 0; t < 10; t++ )
									for( w = 1; w < 10; w++ )
										for( u = 0; u < 10; u++ )
	{
 
		if( s == y || s == n || s == a || s == p || s == o || s == f || s == t || s == w || s == u ||
		y == n || y == a || y == p || y == o || y == f || y == t || y == w || y == u ||
		n == a || n == p || n == o || n == f || n == t || n == w || n == u ||
		a == p || a == o || a == f || a == t || a == w || a == u ||
		          p == o || p == f || p == t || p == w || p == u ||
		                    o == f || o == t || o == w || o == u ||
		                              f == t || f == w || f == u ||
		                                        t == w || t == u ||
		                                                  w == u ) continue;
 
 
 
 
		xx = s*10000 + y*1000 + n*100 + a*10 + p + s*1000 + o*100 + f*10 + t;
		yy = w*10000 + a*1000 + n*100 + t*10 + s + y*100 + o*10 + u;
		if( xx == yy )
		{
			tot += (double)xx;
			printf( "%d : tot = [%.f] // %d%d%d%d%d+%d%d%d%d = %d%d%d%d%d+%d%d%d\n", xx, tot,
				s, y, n, a, p, s,o, f, t, w,a,n,t,s, y,o, u );
		}
	}
}

세번째.. 커피세잔어쩌고...(세잔 이기에 x3 했음)
--------------------------------------------

#include <stdio.h>
 
char *Data[]={
"abaddon",
"abalone",
"abandon",
"abaxial",
...............
"zymotic",
"zymurgy",
NULL};
 
 
int A[20];
char *Str;
 
int Cnt;
 
int main( void )
{
 
	int p = 0;
 
	for( Str = Data[0]; Data[p] != NULL; p++, Str = Data[p] )
	{
		printf( "%s\n", Str );
		for( A[0] = 1; A[0] < 10; A[0]++ )
			for( A[1] = 0; A[1] < 10; A[1]++ )
				for( A[2] = 0; A[2] < 10; A[2]++ )
					for( A[3] = 0; A[3] < 10; A[3]++ )
					{
						if( A[0] == A[1] || A[0] == A[2] || A[0] == A[3] ) continue;
						if( Cnt < 78 ) printf( "%d%d%d%d\n", A[0], A[1], A[2], A[3] );
						aloop( 4 );
					}
	}
 
 
	return 0;
}
 
 
 
 
int aloop( int i )
{
	if( i > 10 ) return check();
 
	if( Str[i-4] == 'c' ) A[i] = A[0];
	else if( Str[i-4] == 'o' ) A[i] = A[1];
	else if( Str[i-4] == 'f' ) A[i] = A[2];
	else if( Str[i-4] == 'e' ) A[i] = A[3];
	else 
	{
		for( A[i] = ((i==4)?1:0); A[i] < 10; A[i]++ )
			aloop( i +1 );
		return 0;
	}
 
	aloop( i +1 );
	return 0;
}
 
 
int check( void )
{
	int xx, yy;
 
 
	if( c1( 0 ) || c1( 1 ) || c1( 2 ) || c1( 3 ) || c1( 4 ) || c1( 5 ) || c1( 6 )) return -1;
 
	if( c2( 0, 1 ) || c2( 0, 2 ) || c2( 0, 3 ) || c2( 0, 4 ) || c2( 0, 5 ) || c2( 0, 6 )) return -1;
	if( c2( 1, 2 ) || c2( 1, 3 ) || c2( 1, 4 ) || c2( 1, 5 ) || c2( 1, 6 )) return -1;
	if( c2( 2, 3 ) || c2( 2, 4 ) || c2( 2, 5 ) || c2( 2, 6 )) return -1;
	if( c2( 3, 4 ) || c2( 3, 5 ) || c2( 3, 6 )) return -1;
	if( c2( 4, 5 ) || c2( 4, 6 )) return -1;
	if( c2( 5, 6 )) return -1;
 
 
	xx = 3*( A[0]*100000 + A[1]*10000 + A[2]*1000 + A[2]*100 + A[3]*10 + A[3]);
	yy = A[4]*1000000 + A[5]*100000 + A[6]*10000 + A[7]*1000 + A[8]*100 + A[9]*10 + A[10];
 
 
 
	if( xx != yy ) return -1;
 
	printf( "%d [%s]: 3x%d%d%d%d%d%d = %d%d%d%d%d%d%d \n",
		++Cnt, Str, A[0], A[1], A[2], A[2], A[3], A[3], A[4], A[5], A[6], A[7], A[8], A[9], A[10]);
 
	A[0] = A[1] = A[2] = A[3] = 10;
 
	return 0;	
}
 
 
 
int c1( int i )
{
 
	if( (( Str[i] != 'c' && A[0] != A[4+i] ) || ( Str[i] == 'c' && A[0] == A[4+i] ))&&
		(( Str[i] != 'o' && A[1] != A[4+i] ) || ( Str[i] == 'o' && A[1] == A[4+i] ))&&
		(( Str[i] != 'f' && A[2] != A[4+i] ) || ( Str[i] == 'f' && A[2] == A[4+i] ))&&
		(( Str[i] != 'e' && A[3] != A[4+i] ) || ( Str[i] == 'e' && A[3] == A[4+i] ))
		) return 0;
 
 
	return -1;
}
 
 
int c2( int i, int j )
{
 
	if( Str[i] == Str[j] && A[4+i] != A[4+j] ) return -1;
	if( Str[i] != Str[j] && A[4+i] == A[4+j] ) return -1;
	return 0;
}

--------------------------------------------------

입니다. 마지막은.. 답나올때까지 못돌려봤네요...

참고로..
첫번째 단어는..
1 [abalone]: 3x941155 = 2823465 로검출되네요...

누가 튜닝해서 빠르게 해보실분..^^;;

deisys의 이미지

1000개인것 같더군요... 문제 만든 분들 힘들었겠어요. -0-?

--
Deisys, in the middle of the world, being with you . . . . . .

익명 사용자의 이미지

커피석잔은 coffee에 해당하는 숫자 조합을 모두 구한 다음에, 각각의 단어마다 coffee * 3을 대입해서 말이 되는지 안되는지만 체크하면 빠른 시간내에 구할 수 있습니다. 그리고 그나마도 다 구할 필요는 없고 100번째까지만 끊어서 구하면 되죠.

select99의 이미지

아까는 시간이 없어... 대충했는데..

지금 좀더 튜닝해봤네요.. 이젠 답나오겠네요..

퇴근시간 50분지났다..이런..

int A[20];
char *Str;
 
int Cnt;
 
int main( void )
{
 
	int p = 0;
 
	for( Str = Data[0]; Data[p] != NULL; p++, Str = Data[p] )
	{
		printf( "%s\n", Str );
		for( A[0] = 1; A[0] < 10; A[0]++ )
			for( A[1] = 0; A[1] < 10; A[1]++ )
				for( A[2] = 0; A[2] < 10; A[2]++ )
					for( A[3] = 0; A[3] < 10; A[3]++ )
					{
						if( A[0] == A[1] || A[0] == A[2] || A[0] == A[3] ) continue;
/*						if( Cnt < 78 ) printf( "%d%d%d%d\n", A[0], A[1], A[2], A[3] );
*/						aloop( 4 );
					}
	}
 
 
	return 0;
}
 
 
 
 
int aloop( int i )
{
	if( i > 4 && c3( i -5 )) return -1;
	if( i > 10 ) return check();
 
	if( Str[i-4] == 'c' ) A[i] = A[0];
	else if( Str[i-4] == 'o' ) A[i] = A[1];
	else if( Str[i-4] == 'f' ) A[i] = A[2];
	else if( Str[i-4] == 'e' ) A[i] = A[3];
	else 
	{
		for( A[i] = ((i==4)?1:0); A[i] < 10; A[i]++ )
			aloop( i +1 );
		return 0;
	}
 
	aloop( i +1 );
	return 0;
}
 
int check( void )
{
	int xx, yy;
 
 
	xx = 3*( A[0]*100000 + A[1]*10000 + A[2]*1000 + A[2]*100 + A[3]*10 + A[3]);
	yy = A[4]*1000000 + A[5]*100000 + A[6]*10000 + A[7]*1000 + A[8]*100 + A[9]*10 + A[10];
 
 
 
	if( xx != yy ) return -1;
 
	printf( "%d [%s]: 3x%d%d%d%d%d%d = %d%d%d%d%d%d%d \n",
		++Cnt, Str, A[0], A[1], A[2], A[2], A[3], A[3], A[4], A[5], A[6], A[7], A[8], A[9], A[10]);
 
	A[0] = A[1] = A[2] = A[3] = 10;
 
	return 0;	
}
 
int c3( int i )
{
	int n;
	if( c1( i ) ) return -1;
	for( n = 0; n < i; n++ ) if( c2( n, i )) return -1;
 
	return 0;	
}
 
int c1( int i )
{
 
	if( (( Str[i] != 'c' && A[0] != A[4+i] ) || ( Str[i] == 'c' && A[0] == A[4+i] ))&&
		(( Str[i] != 'o' && A[1] != A[4+i] ) || ( Str[i] == 'o' && A[1] == A[4+i] ))&&
		(( Str[i] != 'f' && A[2] != A[4+i] ) || ( Str[i] == 'f' && A[2] == A[4+i] ))&&
		(( Str[i] != 'e' && A[3] != A[4+i] ) || ( Str[i] == 'e' && A[3] == A[4+i] ))
		) return 0;
	return -1;
}
 
 
int c2( int i, int j )
{
	if( Str[i] == Str[j] && A[4+i] != A[4+j] ) return -1;
	if( Str[i] != Str[j] && A[4+i] == A[4+j] ) return -2;
	return 0;
}
select99의 이미지

이상하네요.. 왜답이 틀리다그러지...

답이 이거 아닌가요? 제가 문제를 잘못이해하고 있는건지...

순번 단어 : 3잔 X COFFEE(숫자) = 단어(숫자)
1 [abalone]: 3x941155 = 2823465
2 [abolish]: 3x901188 = 2703564
3 [abortus]: 3x901188 = 2703564
4 [abought]: 3x901188 = 2703564
5 [abscess]: 3x354422 = 1063266
6 [abscond]: 3x658844 = 1976532
7 [abubble]: 3x794455 = 2383365
8 [abutter]: 3x816699 = 2450097
9 [accidie]: 3x482255 = 1446765
10 [acidity]: 3x507766 = 1523298
11 [acolyte]: 3x497755 = 1493265
12 [aconite]: 3x497755 = 1493265
13 [actuary]: 3x523388 = 1570164
14 [actuate]: 3x987755 = 2963265
15 [adfinem]: 3x342299 = 1026897
16 [adjunct]: 3x691188 = 2073564
17 [adlocum]: 3x568844 = 1706532
18 [admirer]: 3x805599 = 2416797
19 [adonize]: 3x901155 = 2703465
20 [adoring]: 3x901188 = 2703564
21 [advisee]: 3x594400 = 1783200
22 [adviser]: 3x681199 = 2043597
23 [afroism]: 3x731188 = 2193564
24 [afrowig]: 3x731188 = 2193564
25 [agemate]: 3x817755 = 2453265
26 [aginner]: 3x816699 = 2450097
27 [agonist]: 3x901188 = 2703564
28 [agonize]: 3x901155 = 2703465
29 [aimless]: 3x594422 = 1783266
30 [airbell]: 3x594422 = 1783266
31 [airless]: 3x594422 = 1783266
32 [airlock]: 3x358844 = 1076532
33 [airraid]: 3x533388 = 1600164
34 [airshed]: 3x681199 = 2043597
35 [airwell]: 3x594422 = 1783266
36 [alameda]: 3x405577 = 1216731
37 [alamode]: 3x941155 = 2823465
38 [alapage]: 3x807755 = 2423265
39 [albumen]: 3x681199 = 2043597
40 [aliform]: 3x589944 = 1769832
41 [alodium]: 3x901188 = 2703564
42 [amanita]: 3x708844 = 2126532
43 [amongst]: 3x901188 = 2703564
44 [amorist]: 3x901188 = 2703564
45 [amputee]: 3x594400 = 1783200
46 [ancress]: 3x584422 = 1753266
47 [android]: 3x913388 = 2740164
48 [anglice]: 3x691155 = 2073465
49 [angries]: 3x681199 = 2043597
50 [anguine]: 3x891155 = 2673465
51 [anodize]: 3x901155 = 2703465
52 [another]: 3x352299 = 1056897
53 [anthill]: 3x918811 = 2756433
54 [antisex]: 3x681199 = 2043597
55 [anumber]: 3x681199 = 2043597
56 [anybody]: 3x913388 = 2740164
57 [apanage]: 3x807755 = 2423265
58 [apolune]: 3x901155 = 2703465
59 [apostil]: 3x901188 = 2703564
60 [apostle]: 3x901155 = 2703465
61 [apothem]: 3x352299 = 1056897
62 [aquifer]: 3x684499 = 2053497
63 [aquiver]: 3x681199 = 2043597
64 [aramaic]: 3x807766 = 2423298
65 [arcback]: 3x653388 = 1960164
66 [arclamp]: 3x583388 = 1750164
67 [armless]: 3x594422 = 1783266
68 [arterio]: 3x582266 = 1746798
69 [artless]: 3x594422 = 1783266
70 [ashfire]: 3x780055 = 2340165
71 [ashiver]: 3x681199 = 2043597
72 [assurer]: 3x815599 = 2446797
73 [astrict]: 3x681188 = 2043564
74 [asunder]: 3x681199 = 2043597
75 [aswivel]: 3x681199 = 2043597
76 [atelier]: 3x863399 = 2590197
77 [atomics]: 3x901166 = 2703498
78 [atomize]: 3x901155 = 2703465
79 [atropos]: 3x365588 = 1096764
80 [aurochs]: 3x568844 = 1706532
81 [auspice]: 3x691155 = 2073465
82 [average]: 3x817755 = 2453265
83 [baddish]: 3x911188 = 2733564
84 [badform]: 3x589944 = 1769832
85 [badness]: 3x594422 = 1783266
86 [balcony]: 3x658844 = 1976532
87 [ballade]: 3x811155 = 2433465
88 [ballpen]: 3x811199 = 2433597
89 [ballute]: 3x911155 = 2733465
90 [banquet]: 3x681199 = 2043597
91 [banshee]: 3x594400 = 1783200
92 [barkery]: 3x945577 = 2836731
93 [barrage]: 3x811155 = 2433465
94 [barring]: 3x911188 = 2733564
95 [barytes]: 3x681199 = 2043597
96 [basinet]: 3x681199 = 2043597
97 [bassist]: 3x355588 = 1066764
98 [batfish]: 3x569944 = 1709832
99 [batfowl]: 3x589944 = 1769832
100 [bathtub]: 3x918844 = 2756532
101 [battery]: 3x955577 = 2866731
102 [batting]: 3x911188 = 2733564
103 [battled]: 3x811199 = 2433597
104 [baytree]: 3x594400 = 1783200
105 [beatman]: 3x953388 = 2860164
106 [bedding]: 3x933388 = 2800164
107 [beggary]: 3x933388 = 2800164
108 [behoove]: 3x834455 = 2503365
109 [belljar]: 3x933388 = 2800164
110 [belllap]: 3x533366 = 1600098
111 [bellman]: 3x933388 = 2800164
112 [betaray]: 3x935588 = 2806764
113 [betting]: 3x933388 = 2800164
114 [bibcock]: 3x675588 = 2026764
115 [bigfive]: 3x730055 = 2190165
116 [bigfour]: 3x589944 = 1769832
117 [biggame]: 3x911155 = 2733465

시간없어 가야긋다.. 오늘 낚였다..이런..

deisys의 이미지

일단 33번부터 한번 점검해 보심이...

--
Deisys, in the middle of the world, being with you . . . . . .

lagendia의 이미지

저도 윗 분 말씀에 동감해요.
33번이 그른 듯 하네요.

seoleda의 이미지

3 x 941155 = 2823465 abalone idx:1
3 x 901188 = 2703564 abolish idx:2
3 x 901188 = 2703564 abortus idx:3
3 x 901188 = 2703564 abought idx:4
3 x 658844 = 1976532 abscond idx:5
3 x 794455 = 2383365 abubble idx:6
3 x 816699 = 2450097 abutter idx:7
3 x 482255 = 1446765 accidie idx:8
3 x 507766 = 1523298 acidity idx:9
3 x 497755 = 1493265 acolyte idx:10
3 x 497755 = 1493265 aconite idx:11
3 x 523388 = 1570164 actuary idx:12
3 x 987755 = 2963265 actuate idx:13
3 x 843399 = 2530197 adfinem idx:14
3 x 691188 = 2073564 adjunct idx:15
3 x 568844 = 1706532 adlocum idx:16
3 x 805599 = 2416797 admirer idx:17
3 x 901155 = 2703465 adonize idx:18
3 x 901188 = 2703564 adoring idx:19
3 x 594400 = 1783200 advisee idx:20
3 x 681199 = 2043597 adviser idx:21
3 x 731188 = 2193564 afroism idx:22
3 x 731188 = 2193564 afrowig idx:23
3 x 817755 = 2453265 agemate idx:24
3 x 816699 = 2450097 aginner idx:25
3 x 901188 = 2703564 agonist idx:26
3 x 901155 = 2703465 agonize idx:27
3 x 594422 = 1783266 aimless idx:28
3 x 594422 = 1783266 airbell idx:29
3 x 594422 = 1783266 airless idx:30
3 x 681199 = 2043597 airshed idx:31
3 x 594422 = 1783266 airwell idx:32
3 x 405577 = 1216731 alameda idx:33
3 x 941155 = 2823465 alamode idx:34
3 x 807755 = 2423265 alapage idx:35
3 x 681199 = 2043597 albumen idx:36
3 x 589944 = 1769832 aliform idx:37
3 x 901188 = 2703564 alodium idx:38
3 x 708844 = 2126532 amanita idx:39
3 x 901188 = 2703564 amongst idx:40
3 x 901188 = 2703564 amorist idx:41
3 x 594400 = 1783200 amputee idx:42
3 x 584422 = 1753266 ancress idx:43
3 x 913388 = 2740164 android idx:44
3 x 691155 = 2073465 anglice idx:45
3 x 681199 = 2043597 angries idx:46
3 x 891155 = 2673465 anguine idx:47
3 x 901155 = 2703465 anodize idx:48
3 x 452299 = 1356897 another idx:49
3 x 681199 = 2043597 antisex idx:50
3 x 681199 = 2043597 anumber idx:51
3 x 913388 = 2740164 anybody idx:52
3 x 807755 = 2423265 apanage idx:53
3 x 901155 = 2703465 apolune idx:54
3 x 901188 = 2703564 apostil idx:55
3 x 901155 = 2703465 apostle idx:56
3 x 452299 = 1356897 apothem idx:57
3 x 684499 = 2053497 aquifer idx:58
3 x 681199 = 2043597 aquiver idx:59
3 x 807766 = 2423298 aramaic idx:60
3 x 653388 = 1960164 arcback idx:61
3 x 594422 = 1783266 armless idx:62
3 x 582266 = 1746798 arterio idx:63
3 x 594422 = 1783266 artless idx:64
3 x 780055 = 2340165 ashfire idx:65
3 x 681199 = 2043597 ashiver idx:66
3 x 815599 = 2446797 assurer idx:67
3 x 681199 = 2043597 asunder idx:68
3 x 681199 = 2043597 aswivel idx:69
3 x 863399 = 2590197 atelier idx:70
3 x 901166 = 2703498 atomics idx:71
3 x 901155 = 2703465 atomize idx:72
3 x 568844 = 1706532 aurochs idx:73
3 x 691155 = 2073465 auspice idx:74
3 x 817755 = 2453265 average idx:75
3 x 589944 = 1769832 badform idx:76
3 x 594422 = 1783266 badness idx:77
3 x 658844 = 1976532 balcony idx:78
3 x 681199 = 2043597 banquet idx:79
3 x 594400 = 1783200 banshee idx:80
3 x 945577 = 2836731 barkery idx:81
3 x 681199 = 2043597 barytes idx:82

deisys의 이미지

일단 4번, 5번 사이에
abscess 가 들어갈 것 같습니다... ... ??

--
Deisys, in the middle of the world, being with you . . . . . .

select99의 이미지

아.. 메인에 머하나 빼먹었구나..ㅎㅎ

int main( void )
{
 
	int p = 0;
 
	for( Str = Data[0]; Data[p] != NULL; p++, Str = Data[p] )
	{
		printf( "%s\n", Str );
		for( A[0] = 1; A[0] < 10; A[0]++ )
			for( A[1] = 0; A[1] < 10; A[1]++ )
			{
				if( A[0] == A[1] ) continue;
				for( A[2] = 0; A[2] < 10; A[2]++ )
				{
					if( A[0] == A[2] || A[1] == A[2] ) continue;
					for( A[3] = 0; A[3] < 10; A[3]++ )
					{
						if( A[0] == A[3] || A[1] == A[3] || A[2] == A[3] ) continue;
						aloop( 4 );
					}
				}
			}
	}
 
 
	return 0;
}
김지완의 이미지

" 어차피 풀어도 상품안준다고 해서.. "
어디서 어떻게 전달이 된 것인지 잘 모르겠습니다.
특별한 사항이 아니면 문제를 푸시고 정답을 맞추신 모든 분께는
반드시 상품을 드립니다.

현재 마지막 문제 페이지에 가보시면 문제를 등록하신 분들 리스트가 있고,
일일이 답안을 확인해서 답변 메일을 준비 하고 있습니다.

기념품을 보내드리지 않는 일은 없습니다. ^^

그리고 처음 게시글에도 말씀 드린 것 처럼 댓글로 답안을 적는
일은 자제해 주셨으면 합니다. 되도록이면 지금 있는 소스 들도 삭제를
해주시면 정말 감사하겠습니다.

Ps. 보내 주신 분들의 동의를 얻어 보내주신 소스코드의 공개도 고려하고 있습니다.

M.W.Park의 이미지

졸리고 심심해서 문제를 풀어보았습니다.
요즘 즐겨 쓰는 lisp으로 해보았습니다.

그런데, 홈페이지의 2번째 퍼즐 문제는 뭘 어찌 하라는 건지 이해가 잘 안되는군요. Orz.

(defun build-fib-list (upper-bound)
  (let ((fib-list '(0 1)))
    (loop for next = (+ (nth (- (length fib-list) 1) fib-list)
			(nth (- (length fib-list) 2) fib-list))
	  while (< next upper-bound)
	  do
	  (setf fib-list (append fib-list (list next))))
    fib-list))
 
(apply #'+ (remove-if #'(lambda (x) (< x 12345678999)) (build-fib-list 99987654321)))

ps. URL 알려진 상황에서 소스 올려도 상관 없겠죠?

-----
오늘 나의 취미는 끝없는, 끝없는 인내다. 1973 法頂

-----
오늘 의 취미는 끝없는, 끝없는 인내다. 1973 法頂

박민권의 이미지

저는 처음에 연습장에 연필로 풀어야 하는줄 알고 엄청 삽질했네요;;
프로그램을 짜서 해결하라고 말씀해주시지 ㅠㅠ 흑흑...

터프한 알고리즘은 구현이 쉽지만 마음에 안들어서 나름 스마트하게 알고리즘을 구현하다보니 꽤 걸렸네요.
첨에 간단하게 자바스크립트로 짰는데 돌리는도중 뻗더군요. ㅡㅡ;
다시 자바로 만들어서 답을 계산해낸 시간은 9692밀리초(9.692초) 걸렸습니다.

근무시간에 광속코딩 했더니 팔이 너무 아프지만 기념품 생각하면서 아픔을 잊겠습니다. ^0^

박민권의 이미지

흑 ㅠㅠ

박민권의 이미지

커피3잔 프로그램 돌리는데 한 단어당 평균 10초가 소요되네요.
만약 단어가 정답이라면 10초미만으로 찾지만 정답이 아닌 단어는 10초를 다 잡아 먹네요.
어느 세월에 검사가 끝날지...

cppig1995(로긴귀차니즘)의 이미지

과연 잘 되려나.

// Synapsoft.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
	FILE *fout = fopen("output.txt", "wt");
	long long sum = 0;
	if(!fout) return 1;
	int arr[10];
	int &s=arr[0], &y=arr[1], &n=arr[2], &a=arr[3], &p=arr[4];
	int &o=arr[5], &f=arr[6], &t=arr[7], &w=arr[8], &u=arr[9];
	for(int s=1; s<10; s++)s
		for(int y=1; y<10; y++)
			for(int n=0; n<10; n++)
				for(int a=0; a<10; a++)
					for(int p=0; p<10; p++)
						for(int o=0; o<10; o++)
							for(int f=0; f<10; f++)
								for(int t=0; t<10; t++)
									for(int w=1; w<10; w++)
										for(int u=0; u<10; u++)
										{
	bool b = false;
	for(int it1 = 0; it1 < 10; it1++)
		for(int it2 = 0; it2 < 10; it2++)
			if((it1 != it2) && (arr[it1] == arr[it2])) b = true;
	if(b) continue;
	int lhs = s*10000+y*1000+n*100+a*10+p+s*1000+o*100+f*10+t;
	int rhs = w*10000+a*1000+n*100+t*10+s+y*100+o*10+u;
	/*if(lhs==rhs) fprintf(fout, "%d%d%d%d%d+%d%d%d%d=%d%d%d%d%d+%d%d%d\n",
		s, y, n, a, p, s, o, f, t, w, a, n, t, s, y, o, u);*/
	sum += lhs;
										}
	fprintf(fout, "%lld\n", sum);
	fclose(fout);
}
cppig1995의 이미지

// Synapsoft.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
 
int _tmain(int argc, _TCHAR* argv[])
{
	FILE *fout = fopen("output.txt", "wt");
	long long sum = 0;
	if(!fout) return 1;
	int arr[10];
	int &s=arr[0], &y=arr[1], &n=arr[2], &a=arr[3], &p=arr[4];
	int &o=arr[5], &f=arr[6], &t=arr[7], &w=arr[8], &u=arr[9];
	for(int s=1; s<10; s++)
	{
		for(int y=1; y<10; y++)
		{if(s==y) continue;
			for(int n=0; n<10; n++)
			{if(s==n || y==n) continue;
				for(int a=0; a<10; a++)
				{if(s==a || y==a || n==a) continue;
					for(int p=0; p<10; p++)
					{if(s==p || y==p || n==p || a==p) continue;
						for(int o=0; o<10; o++)
						{if(s==o || y==o || n==o || a==o || p==o) continue;
							for(int f=0; f<10; f++)
							{if(s==f || y==f || n==f || a==f || p==f || o==f) continue;
								for(int t=0; t<10; t++)
								{if(s==t || y==t || n==t || a==t || p==t || o==t || f==t) continue;
									for(int w=1; w<10; w++)
									{if(s==w || y==w || n==w || a==w || p==w || o==w || f==w || t==w) continue;
										for(int u=0; u<10; u++)
										{if(s==u || y==u || n==u || a==u || p==u || o==u || f==u || t==u || w==u) continue;
	int lhs = s*10000+y*1000+n*100+a*10+p+s*1000+o*100+f*10+t;
	int rhs = w*10000+a*1000+n*100+t*10+s+y*100+o*10+u;
	printf("%d=%d\n", lhs, rhs);
	if(lhs==rhs) sum += lhs;
										}}}}}}}}}}
	fprintf(fout, "%lld\n", sum);
	fclose(fout);
}



잊혀진,
혹은 잊어버린,
정체성을,
찾고,
싶다.

Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.

cppig1995의 이미지

윗글 저 맞습니다. 맞구요~
헉! s를 붙였네요 큭
참고로 저건 제가 비복원인지 몰랐다가 -_-
비복원으로 만들면서 치즈오븐스파게티 소스로 만든겁니다.
그래도 ||노가다는 안했어요. 근데 왜 결과가 안나오지 -_-&

Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.

cppig1995의 이미지

엄청 느리네요. 오늘 내로 답이 나올까요? :v



잊혀진,
혹은 잊어버린,
정체성을,
찾고,
싶다.

Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.

cppig1995의 이미지

흠 운영체제를 짜다가 optimize가 optical mice로 보이면서 최적화감각을 잃어버렸는데,
다시 최적화를 해야하나요? (해야할듯) 고민되네요. 어익후



잊혀진,
혹은 잊어버린,
정체성을,
찾고,
싶다.

Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.

cppig1995의 이미지

$ factor 피보나치수의개수
181 269 4220387

전 답 유출한 적 없어요.



잊혀진,
혹은 잊어버린,
정체성을,
찾고,
싶다.

Real programmers /* don't */ comment their code.
If it was hard to write, it should be /* hard to */ read.

시지프스의 이미지

2번 문제 풀이 인증입니다. 3번은 모르겠어요.

댓글 첨부 파일: 
첨부파일 크기
Image icon asdf.png0바이트

begin{signature}
THIS IS SPARTA!!!!!n.
end{signature}

redneval의 이미지

펄로 네 문제 다 풀었습니다.

그런데, 제가 실력이 부족한건지 스크립트 언어의 한계인지 속도가 너무 느리네요.

특히 세번째 문제에서, 1시간에 평균 100단어정도 밖에 처리를 못하네요.

혹시 펄 또는 파이썬으로 세번째 문제 푸신 분 계신가요?

--------------------Signature--------------------
"What can change the nature of a man?"

deisys의 이미지

루비로 했습니다.
Pentium 3 450MHz, 160MB Ram 머신에서 한단어에 대략 1초쯤? 걸리더군요. ...
단어가 모두 만개 가까이 되니.. ㅠㅠ
친구 컴퓨터에서 돌리니 20분정도에 끝났습니다.

--
Deisys, in the middle of the world, being with you . . . . . .

jiee의 이미지

pc(core2duo 1.8Ghz) + 언어(c++) 덕인지.
다 돌리는데 35초 걸리더군요.
1000개 나오던데..

토나오게...

lifthrasiir의 이미지

저는 파이썬으로 풀었고, 전체 돌리는 데 1분 넘게 안 걸렸습니다. 커피 문제는 생각만 조금 하면 빠른 방법이 있더군요. -_-;

박민권의 이미지

커피 세잔 풀었는데 문제가 또있군요. ㅡㅡ;
커피 세잔은 시간과의 싸움이었을뿐 78, 79말고 한 14, 15정도만 해도 낫지 않았을까요. ㅠㅠ
답이 나오는데 2시간이 걸렸네요.
최적화를 시키면 줄어들 수 있겠지만 그래도 1시간은 걸리듯한데요;;

jiee의 이미지

커피 3잔 문제, 다 돌려도 35초 걸리던데요..^^;;

좀 생각해보면 빠른 방법이 있습니다. ^^a

토나오게...

박민권의 이미지

저는 숫자를 증가 시키는 방식으로 할 경우 숫자에 종속되는게 싫어서 모든 경우의 수로 배열을 자리바꿈하는 방식으로 하다보니 상당한 처리 시간이 걸리네요 ^^;;
범용적으로 만드느냐 문제종속적이게 만드느냐의 저울질에 성격상 범용으로 쏠렸습니다. ㅎㅎ

시지프스의 이미지

커피 3잔 3초정도 걸리네요.
어짜피 주어진 문제만 풀면 되므로 너무 일반적인 해법으로 풀 필요는 없는 거 아닌가요. 아무튼 저는 답만 나오게 풀었습니다.

begin{signature}
THIS IS SPARTA!!!!!n.
end{signature}

killereco의 이미지

html 소스를 보니
http://205486422643.synap.co.kr/ChkAnswer.syn?qnum=3&answer=XXXXX,XXXXX
이렇게 값을 가져오네요.

이렇게 구하는 방법도 있을 수 있겠네요

페이지