How oomsveta/42-piscine-february-2026 works
This repository is a portfolio of 42 Piscine C exercise solutions, not a single application. Its principal end-to-end workflows are separate command-line programs: BSQ reads and solves maps, Rush 01 parses clues and solves a Skyscrapers grid, and Rush 02 loads a dictionary and converts numbers to words. Other branches are independent C exercises and small utilities. Edges are limited to calls visible in excerpts or relationships explicitly documented by the README; unsampled implementations are represented by their exact enclosing directories where needed.
Main entry points: src/main.c Converter entry · ex00/main.c Skyscraper entry · src/main.c BSQ entry · src/main.c Tail entry
Components 34
Puzzle programs
- BSQ entry
bsq/src/main.c - Map parser
bsq/src/parser.c - Map solver
bsq/src/solver.c - BSQ helpers
bsq/src/bsq_utils.c - Skyscraper entry
rush_01/ex00/main.c - Clue parser
rush_01/ex00/parser.c - Grid solver
rush_01/ex00/solver.c - Grid printer
rush_01/ex00/printer.c
Word conversion
- Converter entry
rush_02/ex00/src/main.c - Dictionary parser
rush_02/ex00/src/parsing/parser.c - Dictionary input
rush_02/ex00/src/parsing/read_line.c - Number conversion
rush_02/ex00/src/number_to_words.c - Conversion REPL
rush_02/ex00/src/repl.c - Dictionary structures
rush_02/ex00/include/dict.h
File utilities
- File display
c_10/ex01/src/main.c - Tail entry
c_10/ex02/src/main.c - Tail options
c_10/ex02/src/parser.c - Tail engine
c_10/ex02/src/tail.c - Ring buffering
c_10/ex02/src/ring_buffer.c - Hexdump stub
c_10/ex03/src/main.c
C data structures
- Stock strings
c_08/ex04/ft_strs_to_tab.c - Linked-list operations
c_12/ex12/ft_list_remove_if.c - List reversal
c_12/ex15/ft_list_reverse_fun.c - Sorted-list insertion
c_12/ex16/ft_sorted_list_insert.c - Tree insertion
c_13/ex04/btree_insert_data.c - Tree search
c_13/ex05/btree_search_item.c - Level traversal
c_13/ex07/btree_apply_by_level.c
C exercises
- Core C exercises
c_00/ex00/ft_putchar.c - Pointer exercises
c_01/ex00/ft_ft.c - String exercises
c_02/ex00/ft_strcpy.c - String search
c_03/ex04/ft_strstr.c - Number conversion
c_04/ex05/ft_atoi_base.c - Algorithms
c_05/ex08/ft_ten_queens_puzzle.c
Other components
- Command-line user
Connections 18
- Command-line user → BSQ entry: provides input
bsq/src/main.c - BSQ entry → Map parser: parses map
bsq/src/main.c - BSQ entry → Map solver: solves map
bsq/src/main.c - Command-line user → Skyscraper entry: provides clues
rush_01/ex00/main.c - Skyscraper entry → Clue parser: parses clues
rush_01/ex00/main.c - Skyscraper entry → Grid solver: solves grid
rush_01/ex00/main.c - Skyscraper entry → Grid printer: prints grid
rush_01/ex00/main.c - Command-line user → Converter entry: provides number
rush_02/ex00/src/main.c - Converter entry → Dictionary input: reads entries
rush_02/ex00/src/main.c - Converter entry → Dictionary parser: parses entries
rush_02/ex00/src/main.c - Converter entry → Number conversion: converts number
rush_02/ex00/src/main.c - Converter entry → Conversion REPL: starts REPL
rush_02/ex00/src/main.c - Dictionary parser → Dictionary structures: fills structures
rush_02/ex00/src/parsing/parser.c - Command-line user → File display: selects file
c_10/ex01/src/main.c - Command-line user → Tail entry: selects files
c_10/ex02/src/main.c - Tail entry → Tail options: parses options
c_10/ex02/src/main.c - Tail entry → Tail engine: tails files
c_10/ex02/src/main.c - Command-line user → Hexdump stub: invokes utility