aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main.rs
diff options
context:
space:
mode:
authorJeff Heiges <jeff.heiges@colorado.edu>2025-02-28 17:13:17 -0700
committerJeff Heiges <jeff.heiges@colorado.edu>2025-02-28 17:13:17 -0700
commitec9b737b7afbd21c3759b8a2348b28d9ab23ad21 (patch)
treeba55bfb50938e03717594e6299dd3cbdae353130 /src/main.rs
parente283f24418e4d2a8acc2abcb03a7032c5933ae76 (diff)
Outputs to 1 file instead of 2
Diffstat (limited to 'src/main.rs')
-rw-r--r--src/main.rs14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/main.rs b/src/main.rs
index fb6faef..e7281ab 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -13,7 +13,6 @@ fn main() -> std::io::Result<()> {
println!("{} {} {}", sclique, order, output_name);
let mut buffer = File::create(output_name)?;
- let mut buffer2 = File::create(".a")?;
let mut edges: Vec<[u32; 2]> = Vec::new();
let c = Context::new();
@@ -30,9 +29,10 @@ fn main() -> std::io::Result<()> {
let cliques = c.get::<Vec<Vec<u32>>>("B");
write!(buffer, "p cnf {} {}\n", ((order * (order - 1)) / 2), 2*cliques.len())?;
for clique in cliques {
+ let mut line: String = "".to_owned();
+ let mut linen: String = "".to_owned();
for a in 0..sclique {
for b in a+1..sclique {
- //i += 1;
let edge: [u32; 2] = [clique[a], clique[b]];
let result = edges.iter().position(|&val| val==edge);
let eindex = match result {
@@ -43,12 +43,14 @@ fn main() -> std::io::Result<()> {
edges.len()
}
};
- write!(buffer, "{} ", eindex)?;
- write!(buffer2, "-{} ", eindex)?;
+ line.push_str(&format!("{} ", eindex).to_owned());
+ linen.push_str(&format!("-{} ", eindex).to_owned());
}
}
- write!(buffer, "0\n")?;
- write!(buffer2, "0\n")?;
+ line.push_str("0\n");
+ linen.push_str("0\n");
+ write!(buffer, "{}", line)?;
+ write!(buffer, "{}", linen)?;
}
Ok(())
}