# Homework 0 - Intro
Denna läxa har en obligatorisk del och en frivillig del som ni kan göra istället för regular task-1.
Gör så mycket ni hinner till övningen på fredag, alla frivilliga uppgifter behöver inte vara avklarade för att kunna strunta i task-1. :)
Behöver ni hjälp kan ni skriva i homework-0 kanalen i slack
## Obligatoriskt
- Skapa ett github-konto ([public github](https://github.com/), *inte* kth:s github enterprise) om ni inte redan har ett
- Skicka användarnamn på ert github konto i slack kanalen: **_homework-0_**
- Installera Rust (https://www.rust-lang.org/tools/install)
- Installera en utvecklings miljö (exempelvis [VSCode](https://code.visualstudio.com/) med Rust Analyzer)
## Frivillig
- Lös följande kattis uppgifter:
- [A Different Problem](https://open.kattis.com/problems/different)
- [Avstånd till kanten](https://kth.kattis.com/problems/kth.javap.kant)
- [Summera tal](https://kth.kattis.com/problems/kth.javap.sumsort)
- [Cyber-Clara och anmälningslistorna](https://kth.kattis.com/problems/kth.grupdat.anmalningslistorna) (Svårare uppgift än de andra, börja med sist)
Lägg lösningarna i ett **privat** gitrepo på KTHs GitHub som “INDA22PlusPlus/**_kth-id_**-hw0”
Till exempel: INDA22PlusPlus/antlilja-hw0
## Om Rust
I början av DD1337 kommer vi primärt att programera i Rust, vi rekommernderar starkt att ni använder dessa kattis uppgifter för att bekanta er med Rust. [Rust boken](https://doc.rust-lang.org/book/) är en utmärkt resurs för att lära sig spårket!
Att ta input från kattis i Rust kan vara lite förvirrande. Till en början kan ni använda kodsnutten nedan
```rust
use std::io;
use std::io::prelude::*;
fn main() {
let mut buffer = String::new();
io::stdin().read_to_string(&mut buffer).unwrap(); // reads the entierty of standard input to one String
... // your code here
}
```
Output till kattis ges med
```rust
println!(...)
//eller
print!(...)
```