ABC 045, not finished yet, got idea for c

This commit is contained in:
2022-05-29 23:41:44 +02:00
parent 5e31032955
commit 841394f84c
6 changed files with 133 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
use proconio::input;
fn main() {
input!{
a: u16,
b: u16,
h: u16,
};
let result = h * (a + b) / 2;
println!("{}", {result});
}

View File

@@ -0,0 +1,64 @@
use proconio::input;
use std::collections::VecDeque;
enum Winner {
Alice,
Bob,
Charlie,
}
fn parse_char(c: char) -> Winner {
let result : Winner;
match c {
'a' => result = Winner::Alice,
'b' => result = Winner::Bob,
_ => result = Winner::Charlie,
}
result
}
fn main() {
input!{
sa: String,
sb: String,
sc: String,
};
let mut alice : VecDeque<char> = sa.chars().collect();
let mut bob : VecDeque<char> = sb.chars().collect();
let mut charlie : VecDeque<char> = sc.chars().collect();
let mut winner = Winner::Alice;
loop {
if let Winner::Alice = winner {
let p = alice.pop_front();
match p {
None => break,
Some(c) => winner = parse_char(c),
}
}
if let Winner::Bob = winner {
let p = bob.pop_front();
match p {
None => break,
Some(c) => winner = parse_char(c),
}
}
if let Winner::Charlie = winner {
let p = charlie.pop_front();
match p {
None => break,
Some(c) => winner = parse_char(c),
}
}
}
match winner {
Winner::Alice => println!("A"),
Winner::Bob => println!("B"),
Winner::Charlie => println!("C"),
}
}

View File

@@ -0,0 +1,14 @@
use proconio::input;
fn main() {
input!{
s: String,
};
let ns : Vec<u64> = s.chars().map(|c| u64::from(c.to_digit(10).unwrap())).collect();
let nns = vec![ns];
let mut result : u64 = 0;
println!("{}", {result});
}

View File

@@ -0,0 +1,5 @@
use proconio::input;
fn main() {
todo!();
}