use std::io::{read_to_string, stdin}; struct SegTree where F: Fn(T, T) -> T{ pub operation: F, size: usize, tree: Vec } impl SegTree where F: Fn(T, T) -> T { fn new(arr: &Vec, op: F) -> Self { let size = arr.len(); let mut tree = vec![arr[0].clone();size * 4]; let mut stack = vec![]; // (inst, index, [lo, hi)) stack.push((1, 0, 0, size)); stack.push((0, 0, 0, size)); while !stack.is_empty() { let (inst, index, lo, hi) = stack.pop().unwrap(); if inst == 0 { } } SegTree { operation: op, size, tree: tree } } } fn main() { let temp = read_to_string(stdin()).unwrap(); let mut iter = temp .split_ascii_whitespace() .map(|x| x.parse::().unwrap()); }