Skip to content

Instantly share code, notes, and snippets.

View rosalogia's full-sized avatar

Ambika E rosalogia

View GitHub Profile
@rosalogia
rosalogia / main.rs
Last active March 3, 2021 04:13
Mean, Median and Mode of a Vec<i32> in Rust
use std::collections::HashMap;
pub fn mean(values: &[i32]) -> f64 {
let mut sum = 0.0;
for x in values {
sum += *x as f64;
}
sum / values.len() as f64
@rosalogia
rosalogia / problem_set_generator.fsx
Created February 23, 2021 04:02
Short F# script to generate problem sets of a specified size containing problems from multiple sections of a textbook
#r "nuget: FSharp.Json"
open FSharp.Json
open System.IO
type SubSection =
{ Name: string
; Weight: float
; ProblemRange: int * int }
type Section =
@rosalogia
rosalogia / mergesort.cpp
Created November 28, 2020 00:47
Heavily Annotated Implementation of MergeSort in C++
#include <iostream> // For input/output
using namespace std;
// The merge function is where the sorting actually happens
// int arr[] is the array we're passing in
// int l is the index of the array that the left "chunk" begins at
// int m is the index of the array that the left "chunk" ends at, whereas the right "chunk" ends at m + 1
// int r is the index of the array that the right "chunk" /ends/ at
void merge(int arr[], int l, int m, int r) {
// Here we compute the size of the two "chunks"
@rosalogia
rosalogia / problem_b.cpp
Created October 29, 2020 04:14
A solution to a graph theory CF practice problem in C++
#include <bits/stdc++.h>
#define N 1000010
using namespace std;
typedef long long int ll;
vector<ll> graph[N];
set<ll> seen;
ll min_cost = LLONG_MAX;
void dfs(ll costs[], ll r) {