KTUG마당은 KTUG를 방문하는 모든 이용자가 대화를 나누고 소식을 전하는 곳입니다.
- 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
- Team Blog의 글을 이곳 게시판의 "정보글"로 모았습니다. Team blog는 기고자가 올린 글에 질문을 받는 부담을 줄이기 위하여 댓글을 허용하지 않았습니다. 그러나 이곳 게시판으로 모으면서 댓글을 달 수 있습니다. 게시물을 작성하실 때 댓글을 원하지 않으시면 댓글을 허용하시지 않으시기를 바랍니다. 또한 불필요한 소모성 댓글을 달지 않도록 주의하여 주시기를 바랍니다.
- TeX과 관련된 질문이나 답변은 QnA 마당을 이용하십시오. TeX과 관련된 질문은 지웁니다
- MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
- 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
- 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
- 사용하는 편집기는 CKeditor입니다. 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한줄을 비웁니다. 글줄만 바꾸려면 shift-enter 를 누르시면 <BR>가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
자유글 재미로 해보는 피보나치 수열
2015.01.09 04:12
LaTeX3를 가지고 피보나치 수열 생성 함수를 만들어봤습니다.
꼬랑지 재귀가 잘 될는지 궁금해서 해본 것인데 뭐... 대략 잘 되는 듯요.
\fibo_iter:nnn 함수의 마지막에 자기 자신을 다시 호출하고 있습니다.
들리는 소문에 모 회사의 입사시험 문제였다고도 하는데, 설마 LaTeX으로 이걸 풀면 점수 줄까나요?
하는 김에 expl3에 있는 floating point 데이터타입을 이용해서 인접한 항의 비를 구했습니다. 황금비로 수렴해가는 거랍니다.
\cs_new:Npn \fibo_iter:nnn #1 #2 #3
{
\int_compare:nTF { #1 = 0 }
{
\int_set:Nn \output_int { #2 }
}
{
\fibo_iter:nnn { \int_eval:n { #1 - 1 } } { #3 } { \int_eval:n { #3 + #2 } }
}
}
\NewDocumentCommand \fibo { m }
{
\fibo_iter:nnn { #1 } { 0 } { 1 }
$\mathrm{F}\c_math_subscript_token {#1} = \int_use:N \output_int$
}
말하자면, 다음과 같은 코드의 expl3 판입니다.
\makeatletter
\newcount\outputcnt
\long\def\fibo#1{%
\@fibo{#1}{0}{1}%
$f_{#1} = \the\outputcnt$ \par
}
\def\@fibo#1#2#3{%
\ifnum0=#1
\outputcnt=#2
\else
\@fibo{\numexpr#1-1\relax}{#3}{\numexpr#3+#2\relax}%
\fi
}
\makeatother
댓글 14
-
likesam
2015.01.09 14:24
-
작나
2015.01.09 22:01
앞에 있는 계단을 오르려 합니다.
나는 계단을 한 번에 한 계단 혹은 두 계단씩 오를 수 있습니다.
계단이 총 n개로 되어있다면, 이 계단을 오르는 방법의 수는 모두 몇 가지 일까요?
-
nanim
2015.01.10 14:55
n번째 계단까지 가려면,
- (n-1)번째 계단까지만 가면 거기서 n번째로 가는 방법은 유일하니까, 일단 (n-1)번째 계단까지 가는 방법의 수를 구하고,
- (n-2)번째 계단까지만 가면 거기서 두 계단 오르기로 n번째 계단까지 가는 방법은 유일하니까, (n-2)번째 계단까지 가는 방법의 수를 구하여
n번째 계단까지 가는 방법의 수 = (n-1)번째 계단까지 가는 방법의 수 + (n-2)번째 계단까지 가는 방법의 수.
-
작나
2015.01.10 15:20
그래서 n번째 계단까지 가는 방법의 수를 \(f(n)\)이라고 하면, 이 문제의 해답은 설명하신대로
\[f(n)=f(n-1)+f(n-2), \quad f(1)=1, f(2)=2\]가 됩니다. 피보나치 수열! 참고로, 미쿡 페북 본사의 소프트웨어 개발자의 입사 면접 문제였다고 합니다.
-
DohyunKim
2015.01.11 14:59
$$ f(2) = 2 $$ 가 되어야 하지 않나요? 한 계단씩 올라가는 경우와 두 계단을 한꺼번에 올라가는 경우가 있으니까요.
-
작나
2015.01.11 16:59
네, 그렇습니다.
-
nanim
2015.01.11 17:18
그냥 "언어적 오류"인 듯. "계단의 수"가 명확한 의미로 주어지지 않아서 생기는 문제겠지요.
\(n\)을 올라가는 사람이 설 수 있는 플로어의 수라고 생각하면
출발점, \(f(1)\)
상자를 하나 쌓아서 올라갈 플로어가 2개가 된 상황을 \(f(2)\)
\(f(2)=f(1)=1\)입니다.
-
DohyunKim
2015.01.12 15:54
네, 그렇게도 이해할 수 있겠습니다. 우리는 건물 지상층을 1층이라고 여기며 살고 있으니까요.
유럽 친구들은 우리의 2층을 1층이라고 부릅니다. 저는 유럽식으로 생각했네요.
-
지나가다
2015.01.11 05:15
여기서 유일성(밑에 분이 말씀하신 배반사건)은 어떻게 증명하나요?
-
nanim
2015.01.11 18:02
문제에 "한 번에 한 계단 또는 두 계단을 오를 수 있습니다."
이것은 either... or 조건으로서 배반사건입니다.
그리고 "유일성"은 이 문제의 전제와 동일한 의미입니다.
-
참가번호2
2015.01.10 18:11
n개의 계단을 오르는 방법의 수를 a_n 이라고 하면
첫번째 발걸음을 한 계단을 오르면 남은 n-1 개의 계단을 오르고
첫번째 발걸음을 두 계단을 오르면 남은 n-2 개의 계단을 오르면 되므로
그리고
위의 두 사건은 서로 배반사건이므로
a_n=a_{n-1}+a_{n-2}.
-
처음처럼
2015.01.12 14:41
야~~!!!
Tex 이.. C 풀그램을.. 하디니.. 대단~@!! 그리고 충격!! ㅡ.ㅜ
-
처음처럼
2015.01.12 15:21
제가 수학쌤이라 ㅎ.. 한번 답변을 드릴게요~
일단.. 위에 말씀하신 모든 루틴과 댓글은.. 정답이 될수 있습니다.
피보나치 수열이 아름다운건.. "자기 반복"입니다. 이것이 자연의 이치에 있다는 것을 과학적으로 밝혀냈기 때문이죠
질문한것 중에 중요한 것은 초기 조건입니다.
f(0)=f(1)=1, f(n+2)=f(n+1)+f(n)
을 만족하는 무한수열은 피보나치수열이고, 초기조건인 f(0)과 f(1)이 같지않은 복잡한 수열을 루카스수열이라고 합니다.
질문하신 수열은... 초기 조건만 따지면, 루카스 수열입니다.
-
Progress
2015.01.16 08:50
초기조건인 f(0)과 f(1)이 같지않은 복잡한 수열을 루카스수열이라고 합니다.
스타워즈 만든 조지 루카스인가요? :)
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
1146 | KTUG 문고에 투고합니다 [6] | 텍사랑 | 2024.09.21 | 87 |
1145 | 색인에서 연속하는 페이지 번호 [3] | yihoze | 2023.11.16 | 140 |
1144 | 예전 샘플 문서 갱신: 금강경 | noname | 2024.05.15 | 142 |
1143 | daft text [1] | noname | 2024.04.29 | 145 |
1142 | [Lilypond] W. A. Mozart, Laudate Dominum [3] | noname | 2024.04.07 | 146 |
1141 | LyX 2.4에 대한 각주 | noname | 2024.06.05 | 149 |
1140 | 색인어에 한자 넣기 [4] | 판돌이 | 2024.09.10 | 154 |
1139 | simplebnf v1.0.0: Backus-Naur form (BNF) 문법을 간단히 표시해주는 패키지 [2] | Zeta | 2023.11.24 | 156 |
1138 | 수능 국어 문제 [3] | noname | 2024.09.09 | 161 |
1137 | 매큔-라이샤워 표기법 키보드 밖의 부호 [2] | noname | 2024.05.31 | 168 |
1136 | Codehigh 패키지 [7] | Zeta | 2023.11.23 | 174 |
1135 | 게임 테이블 그리기 2 | ischo | 2024.02.14 | 175 |
1134 | 꺾쇠란 무엇인가? [5] | noname | 2024.09.01 | 180 |
1133 | [유틸리티] latexindent [1] | noname | 2024.03.30 | 185 |
1132 | 잊을 만하면 다시 돌아오는 로또 [4] | yihoze | 2023.12.05 | 197 |
1131 | 며칠 전에 올렸던 문서 [5] | noname | 2024.08.23 | 208 |
1130 | 영어로 작성된 텍 파일의 철자 검사하기 [2] | yihoze | 2023.11.03 | 220 |
1129 | [취미] 심심할 때는 괘를 뽑아보세요 [1] | noname | 2024.04.16 | 220 |
1128 | 님의침묵 | noname | 2023.03.01 | 223 |
1127 | [KTUG 문고] 이태준, 복덕방 [3] | noname | 2024.05.21 | 227 |
> 들리는 소문에 모 회사의 입사시험 문제였다고도 하는데, 설마 LaTeX으로 이걸 풀면 점수 줄까나요?
소프트웨어 개발사 : 이건 무슨 언어인가요?
출판사 : 그냥 타이핑 치면 되지, 왜 이렇게 어렵게 하나요?
라는 답을 받지 않을까요?