boodii0308 / ft_alone_in_the_dark

42 Silicon Valley exam subjects, pseudocode, testcases, and solutions

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ft_alone_in_the_dark

42 Silicon Valley exam subjects, pseudocode, testcases, and solutions

Questions? Requests? Reach me on Slack @evjohnst.

Pull requests welcome!

Sessions

6pm - 8pm on Mondays, room 115

Each Monday we discuss problems from the exams with an emphasis on conceptual understanding. To request a problem, let us know on Slack in #ft_alone_in_the_dark or DM @evjohnst, @cschulle, or @jadawson.

Code from most recent session (2019.05.27)

Agenda for next session (2019.05.27)

Nothing yet!

Beginner Exam

The beginner exam includes about 50 problems divided into 6 levels of increasing complexity, numbered 0 through 5. Level 0 problems are as easy as only_a, which prints the character 'a' to stdout, while level 4 and 5 problems are as complex as flood_fill, ft_itoa_base, and print_memory.

Subjects covered include string manipulation, bitwise operations, memory allocation, sorting algorithms, simple data structures, linked lists, and base conversions. Solutions must run in under 10 seconds; no other optimization is required.

Show Problem List
Problem Subjects Guide Code
0-aff_a πŸ“œ 🚫 🚫
0-aff_first_param πŸ“œ 🚫 🚫
0-hello πŸ“œ 🚫 🚫
0-maff_alpha πŸ“œ 🚫 🚫
0-only_a πŸ“œ 🚫 🚫
0-only_z πŸ“œ 🚫 🚫
1-first_word πŸ“œ 🚫 🚫
1-ft_strcpy πŸ“œ 🚫 🚫
1-repeat_alpha πŸ“œ 🚫 🚫
1-rev_print πŸ“œ 🚫 🚫
1-rot_13 πŸ“œ 🚫 🚫
1-ulstr πŸ“œ 🚫 🚫
2-alpha_mirror πŸ“œ 🚫 🚫
2-do_op πŸ“œ πŸ“— 🚫
2-ft_strdup πŸ“œ 🚫 🚫
2-ft_strrev πŸ“œ 🚫 🚫
2-inter πŸ“œ 🚫 🚫
2-max πŸ“œ 🚫 🚫
2-print_bits πŸ“œ 🚫 🚫
2-reverse_bits πŸ“œ 🚫 🚫
2-swap_bits πŸ“œ 🚫 🚫
3-add_prime_sum πŸ“œ 🚫 🚫
3-epur_str πŸ“œ 🚫 🚫
3-ft_range πŸ“œ 🚫 🚫
3-ft_rrange πŸ“œ 🚫 🚫
3-hidenp πŸ“œ 🚫 🚫
3-paramsum πŸ“œ 🚫 🚫
3-pgcd πŸ“œ πŸ“— 🚫
3-print_hex πŸ“œ 🚫 🚫
3-rstr_capitalizer πŸ“œ 🚫 🚫
3-str_capitalizer πŸ“œ 🚫 🚫
3-tab_mult πŸ“œ 🚫 🚫
4-check_mate πŸ“œ πŸ“— πŸ“
4-flood_fill πŸ“œ πŸ“— πŸ“
4-ft_list_foreach πŸ“œ 🚫 🚫
4-ft_list_remove_if πŸ“œ 🚫 🚫
4-rev_wstr πŸ“œ 🚫 🚫
4-rostring πŸ“œ πŸ“— 🚫
4-sort_int_tab πŸ“œ 🚫 🚫
4-sort_list πŸ“œ 🚫 🚫
5-brackets πŸ“œ πŸ“— πŸ“
5-ft_itoa_base πŸ“œ πŸ“— πŸ“
5-options πŸ“œ 🚫 πŸ“
5-print_memory πŸ“œ πŸ“— πŸ“
5-rpn_calc πŸ“œ πŸ“— πŸ“

Recommended Solutions Repos

Intermediate Exam

The intermediate exam is similar in structure to the beginning exam, but it introduces dynamic programming, optimization requirements, and implementations of data structures.

Subjects covered include Big O notation, traversal of binary trees, multiply linked lists, and string math. Some problems require solutions that run in a specific time complexity.

Show Problem List
Problem Subjects Guide Code
0-count_of_2 πŸ“œ 🚫 πŸ“
0-equation πŸ“œ 🚫 πŸ“
0-find_pivot πŸ“œ 🚫 πŸ“
0-is_anagram πŸ“œ 🚫 πŸ“
0-print_doublon πŸ“œ 🚫 πŸ“
1-count_alpha πŸ“œ 🚫 πŸ“
1-flood_fill πŸ“œ πŸ“— πŸ“
1-height_tree πŸ“œ 🚫 πŸ“
1-queue πŸ“œ 🚫 πŸ“
1-stack πŸ“œ 🚫 πŸ“
2-is_looping πŸ“œ 🚫 πŸ“
2-longest_sequence πŸ“œ 🚫 🚫
2-str_maxlenoc πŸ“œ 🚫 πŸ“
2-ord_alphlong πŸ“œ 🚫 πŸ“
2-reverse_tree πŸ“œ 🚫 πŸ“
3-can_split πŸ“œ 🚫 ⚠️
3-convert_bst πŸ“œ 🚫 πŸ“
3-gold_gain πŸ“œ πŸ“— πŸ“
3-perimeter πŸ“œ 🚫 πŸ“
3-width_tree πŸ“œ 🚫 πŸ“
4-clone_list πŸ“œ 🚫 πŸ“
4-intersection πŸ“œ 🚫 πŸ“
4-longest_subarray πŸ“œ 🚫 🚫
4-range_comb πŸ“œ 🚫 🚫
4-volume_histogram πŸ“œ 🚫 πŸ“
5-count_island πŸ“œ 🚫 🚫
5-g_diam πŸ“œ 🚫 🚫
5-infin_add πŸ“œ 🚫 🚫
5-infin_mult πŸ“œ 🚫 🚫

Recommended Solutions Repos

Exam Tips

Exam Mechanics & Logistics

Exams take place every Tuesday morning from 9:00am - 1:00pm, in Zone 2 at 42 Silicon Valley. Students log into a special exam account with limited access to applications and the Internet, and take the test using a text editor, git, and an in-house terminal app called examshell.

Students are given one question at a time, beginning the test at level 0. For each correct solution, they are awarded points and they progress to the next level of the test, up to a maximum of level 5. For each incorrect solution, they are given a different problem of the same level, and the number of points they may earn on the current level is reduced by 5, to a minimum of 0. Up to 16 points may be earned for each of levels 0 through 4, and up to 20 points may be earned for level 5, for a maximum total of 100.

In order to pass the exams, students must achieve at least 75 points for the beginner version, or 80 points for intermediate. In order to receive course credit for the exam and become eligible to take the next difficulty level, students must pass at least 5 times. There is currently no advanced exam, but a few students are writing problems for it.

About

42 Silicon Valley exam subjects, pseudocode, testcases, and solutions


Languages

Language:C 100.0%