• C++ Programming for Financial Engineering
    Highly recommended by thousands of MFE students. Covers essential C++ topics with applications to financial engineering. Learn more Join!
    Python for Finance with Intro to Data Science
    Gain practical understanding of Python to read, understand, and write professional Python code for your first day on the job. Learn more Join!
    An Intuition-Based Options Primer for FE
    Ideal for entry level positions interviews and graduate studies, specializing in options trading arbitrage and options valuation models. Learn more Join!

Quantitative Interview questions and answers

(x_0 =1)
(x_n =1+\frac{2}{3x_{n-1}^2})
(x_1 = \frac{5}{3})
(x_2 = \frac{31}{25})
(x_3 = \frac{4133}{2883})

Can you find a closed form for (x_n)


This is the only one I can't figure out. I spent a good half hour on it, but it doesn't lend itself to any tricks I've seen before (it's not linear recursive, so I can't write down a linear operator and diagonalise it, it doesn't become more tractable if I write down (x_n) in terms of (x_{n-2}) or even earlier entries, I don't see an obvious way to do a "boomerang integration" type trick, and the pattern is not obvious enough that I can write down the answer and prove using induction).

Oh well. :(

Agreed, this one is hard. I tried many methods too. It looks like the answer(if it exists, which I doubt) is really ugly.
 
I have approached the problem a little differently and got a different(although similar) result.

Answer: 4.63


opinions?

Well, since you saw my post it would be more productive if you tried to find a mistake in my solution, your solution, or did something else. Like write a quick Monte Carlo check to see what the answer is approximately.

btw this is my first post!!

Good luck!
 
Hi all! Haven't visited Quantent for a long time. Having a quick look at the questions, #1 and #6 are basically the same. To be honest, I did something like them in my junior high.
#1 answer: 2^(1/2), (don't know how to use radical sign, i.e., 1.414...)
#6 answer: 2

similar question: prove 0.99999999.....=1, remember that there is no series theory in junior high.
 
#3 solution:
draw a horizontal line, suppose minute hand at origin 0, then hour hand 60 units(or *miles*, you define it) ahead. hour hand travels at the 1/12 speed as minute hand does. Both start the same time, at some time they will meet at a point ahead. The distance minute hand travels will be the answer,

so set the time they travel is t, the distance hour hand travels is y, minute hand's speed is x, hence,
(1). xt=60+y
(2). (1/12)xt = y
(1)/(2) gets:
12=(60+y)/y, get
y=5 5/11 minutes, approx 5 minutes and 27 seconds
1hr 5 min 27 seconds

dirty and quick with no real theory behind :)
 
similar question: prove 0.99999999.....=1, remember that there is no series theory in junior high.

Well, I know several proofs, but just now I got this idea,
completely elementary:
0.999... = 9 * 0.111... = 9 * (1/9) = 1.

The identity 1/9=0.1111 can be proven easily using, for example, long division.

Normally I just solve the questions in this topic in the order of their appearance(when I am not defending my thesis) :D :D :D
 
Drowsy,
You still have to prove 0.11111... = 1/9.
Here it is:
assume 0.999... = a
10 x 0.999... = 10a
9.999... = 10a
9.999... - a = 10a - a
9 = 9a
a=1
thus, 0.999... = 1

Sorry, didn't see your long division note. Yes, elementary math just shows that. But we just memorize it, the whatever reason behind it was not clarified when I was in elementary school. Let's use a better solution, series.

prove 0.1111....=1/9, or prove 0.999...=1.

0.111... = 1/10 + 1/100 + 1/1000 + ... + 1/10^n. I don't have to show it, you know it. :)
But using series has nothing to do with #1 or #3
 
Haven't learned probability that much, please correct me if I am wrong.
#4,
draw a diameter such that it can always group 2 points onto a simicircle, the 3rd point must be either one, so the answer is 1/2.
 
kevin, your 0.999... question was trivial. I wrote something just b/c I got a new idea (of taking out 9) :D

Here is a cute puzzle(I know several solutions):

Consider a 3x3x3 cube of 27 1x1x1 cubes glued together. You are allowed to make straight cuts and place pieces close to each other
so that you cut several pieces at once(you only cut along the planes separating the 1x1x1 cubes). How many cuts do you need to split the big cube
into the 27 small cubes? Clearly 6 cuts is enough, but maybe you can do it faster?

Then solve for 4x4x4 cube, 5x5x5, nxnxn, NxMxR, then generalize to multidimensional :D It's all trivial. ;)
 
\(x_0=1\)
\(x_n=1+\frac{2}{3x_{n-1}^2}\)

Can you find a closed from for (x_n)?
I got
\(x_n=(\sin(\operatorname{arctan}\big(\sqrt{\frac{3}{2}}x_{n-1}\big)))^{-2}\), but I don't think it gets any better than this;).

I have never been on a quant interview, but I can't tell what's the use of this question...
 
4. (x_0 =1)
(x_n =1+\frac{2}{3x_{n-1}^2})
(x_1 = \frac{5}{3})
(x_2 = \frac{31}{25})
(x_3 = \frac{4133}{2883})

Can you find a closed form for (x_n)

The cardinal rule is (perhaps) to simplify or transform a (difficult) problem in math to something more manageable.

Here's a suggestion:

Let's assume x(n) can be expressed as a rational a(n)/b(n). I use functional notation instead of subscript notation for the sequences.

Upon substitution, we get:

x(n)=a(n)/b(n)=1+{2*((b(n-1))^2)}/{3*((a(n-1))^2)}={3*((a(n-1))^2)+2*((b(n-1))^2)}/{3*((a(n-1))^2)}.

Now we set numerators equal to each other as well as the denominators equal to each other:

a(n)=3*((a(n-1))^2)+2*((b(n-1))^2),

b(n)=3*((a(n-1))^2).

So, we have a system of equations to work with.

Or, from the system above we can get a single recursive equation:

a(n)=3*((a(n-1))^2)+2*((3*((a(n-2))^2))^2)=3*((a(n-1))^2)+18*((a(n-2))^4).



This method is quite effective if the exponent "2" was not present at all in the original problem.
 
prove 0.99999999.....=1, remember that there is no series theory in junior high.

Here's is hardly any math proof:

Let x=.99999999999999......

Claim: For any positive number y: if y<1, then y<=x.

Proof: If y!=x, then in the decimal expansion of y, a digit of y to the right of the decimal point is (has to be) less than the corresponding digit of x given that all digits of x are the largest possible digit 9. So, y<x. This does it!

Now, to show contradiction, suppose x<1.

Set z=(x+1)/2.

So, x<z. (**1**)

Also, z<1.

Since z<1, then z<=x by the above claim.

So, z<=x. (**2**)

(**1**) and (**2**) contradict each other.

To remove contradiction we have to reject the assumption that x<1. Hence x>=1. Obviously x!>1. Hence x=1.
 
Average Distance From The Center

Certain events occur with uniform probability at various points within a sphere of radius R. Find the average distance of the locations of these events from the center of the sphere. The probability that an event will occur within a region of volume V inside the sphere is V/W where W is the volume of the sphere of radius R.
 
Let X(0) ~ u[0,1], and for k=1,2,3,... let X(k) ~ u[0,X(k-1)].

Find

1. P{X(n)<a} where 0<a<1.

2. P{X(n-1)-X(n)<d} where 0<d<1.

3. P{X(i)-X(j)<d} where 0<d<1 and i<j.

4. P{S(n)<s} where s>0 and S(n)=SUM{X(k) [k:0 to n]}.

5. P{S(n)-S(m)<s} where s>0 and n>m.
 
Array-sorting question

GIven a special programming language, no for or while loop, but you are given function that can add an element in front of array, and a function comparing two elements. Can you use this language to sort an array?

BTW, any idea about using European option to replicate binary option?
 
You can if you have some other way to access successive elements in the array without the loops. You will also need to keep track of the sorted status of the array to know when the sorting is done.
 
You can if you have some other way to access successive elements in the array without the loops. You will also need to keep track of the sorted status of the array to know when the sorting is done.

This is not a meanful answer to such a question, which is a real interview question from a wallstreet bank.....Anyway, thanks for suggestion.
 
GIven a special programming language, no for or while loop, but you are given function that can add an element in front of array, and a function comparing two elements. Can you use this language to sort an array?

BTW, any idea about using European option to replicate binary option?

IS Goto available ? I am guessing not.
 
GIven a special programming language, no for or while loop, but you are given function that can add an element in front of array, and a function comparing two elements. Can you use this language to sort an array?

Since you are not allowed to use loops, the only way to do that is by using recursive function. I.e. calling the function itself within the function.
 
Back
Top