summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornatrixaeria <upezu@student.kit.edu>2019-12-20 06:39:40 +0100
committernatrixaeria <upezu@student.kit.edu>2019-12-20 06:39:40 +0100
commitb79c0330c0e3d65a4b6bd56c0931a4d6245e9d55 (patch)
treef299f03b47f5f7c2fafd600bfc7832692fc3b342
parent23d0e1aee04a352cd028a867b15dfa3fe26006aa (diff)
Add color output to `output`
-rw-r--r--src/solvers.rs16
1 files changed, 7 insertions, 9 deletions
diff --git a/src/solvers.rs b/src/solvers.rs
index 9bf0ad6..ce5568c 100644
--- a/src/solvers.rs
+++ b/src/solvers.rs
@@ -32,20 +32,18 @@ impl Wall {
pub fn output(&self, n: u32, h: u32) {
let mut stones = vec![0; n as usize];
+ let mut toggle = 0;
+ let colors = ["\x1b[31m", "\x1b[32m", "\x1b[33m", "\x1b[34m", "\x1b[35m", "\x1b[36m"];
for row in 0..h {
self.calculate_row(row, &mut stones);
for &len in stones.iter() {
- if len <= 1 {
- print!("◼");
- } else if len > 1 {
- print!("◢");
- for _ in 0..(len - 2) {
- print!("◼");
- }
- print!("◣");
+ print!("{}", colors[toggle]);
+ toggle = (toggle + 1) % colors.len();
+ for _ in 0..len {
+ print!("█");
}
}
- println!("");
+ println!("\x1b[m");
}
}
}