Submission #2116918


Source Code Expand

#[allow(unused_imports)]
use std::io::{stdin, Read, StdinLock};
#[allow(unused_imports)]
use std::cmp::{max, min, Ordering};
#[allow(unused_imports)]
use std::str::FromStr;
#[allow(unused_imports)]
use std::collections::{HashSet, HashMap, BinaryHeap, VecDeque};
#[allow(unused_imports)]
use std::vec::Vec;

#[allow(dead_code)]
const INF: i32 = 1000_000_000;
#[allow(dead_code)]
const INFLL: i64 = 1000_000_000_000_000_000;
#[allow(dead_code)]
const EPS: f64 = 1.0e-10;
#[allow(dead_code)]
const MOD: i32 = 1000_000_007;
#[allow(dead_code)]
const MODLL: i64 = 1000_000_007;

struct Scanner<'a> {
    cin: StdinLock<'a>,
}

#[allow(dead_code)]
impl<'a> Scanner<'a> {
    fn new(cin: StdinLock<'a>) -> Scanner<'a> {
        Scanner {cin: cin}
    }
    fn read1<T: FromStr>(&mut self) -> Option<T> {
        let token = self.cin.by_ref().bytes().map(|c| c.unwrap() as char)
                    .skip_while(|c| c.is_whitespace())
                    .take_while(|c| !c.is_whitespace())
                    .collect::<String>();
        token.parse::<T>().ok()
    }
    fn read<T: FromStr>(&mut self) -> T {
        self.read1().unwrap()
    }
}

fn main() {
    let cin = stdin();
    let cin = cin.lock();
    let mut sc = Scanner::new(cin);

    let m: i64 = sc.read();
    'outer: for h in 1..3501i64 {
        for w in 1..3501i64 {
            if 4 * h * w - m * (h + w) == 0 {
                continue;
            }
            let n = m * h * w / (4 * h * w - m * (h + w));
            if n * (4 * w * h - m * (h + w)) == m * h * w && n > 0 {
                println!("{} {} {}", h, n, w);
                break 'outer;
            }
        }
    }
}

Submission Info

Submission Time
Task C - 4/N
User Suibaka
Language Rust (1.15.1)
Score 300
Code Size 1716 Byte
Status AC
Exec Time 70 ms
Memory 4476 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 3
AC × 50
Set Name Test Cases
Sample 0002, 3485, 4664
All 0002, 0003, 0004, 0005, 0006, 0007, 0049, 0073, 0097, 0121, 0137, 0139, 0156, 0163, 0169, 0181, 0191, 0223, 0229, 0263, 0271, 0289, 0361, 0481, 0529, 0551, 0649, 0720, 0916, 1081, 1156, 1498, 1921, 2041, 2329, 2449, 2568, 2918, 2929, 3289, 3429, 3485, 3763, 4081, 4277, 4648, 4652, 4656, 4660, 4664
Case Name Status Exec Time Memory
0002 AC 2 ms 4352 KB
0003 AC 2 ms 4352 KB
0004 AC 2 ms 4352 KB
0005 AC 2 ms 4352 KB
0006 AC 2 ms 4352 KB
0007 AC 2 ms 4352 KB
0049 AC 2 ms 4352 KB
0073 AC 2 ms 4352 KB
0097 AC 3 ms 4352 KB
0121 AC 3 ms 4352 KB
0137 AC 3 ms 4352 KB
0139 AC 3 ms 4352 KB
0156 AC 3 ms 4352 KB
0163 AC 3 ms 4352 KB
0169 AC 3 ms 4352 KB
0181 AC 4 ms 4352 KB
0191 AC 4 ms 4352 KB
0223 AC 4 ms 4352 KB
0229 AC 4 ms 4352 KB
0263 AC 4 ms 4352 KB
0271 AC 4 ms 4352 KB
0289 AC 5 ms 4352 KB
0361 AC 5 ms 4352 KB
0481 AC 7 ms 4352 KB
0529 AC 7 ms 4352 KB
0551 AC 7 ms 4352 KB
0649 AC 8 ms 4352 KB
0720 AC 9 ms 4352 KB
0916 AC 11 ms 4476 KB
1081 AC 13 ms 4352 KB
1156 AC 14 ms 4352 KB
1498 AC 18 ms 4352 KB
1921 AC 24 ms 4352 KB
2041 AC 25 ms 4352 KB
2329 AC 29 ms 4352 KB
2449 AC 31 ms 4352 KB
2568 AC 33 ms 4352 KB
2918 AC 39 ms 4352 KB
2929 AC 38 ms 4352 KB
3289 AC 44 ms 4352 KB
3429 AC 46 ms 4352 KB
3485 AC 47 ms 4352 KB
3763 AC 52 ms 4352 KB
4081 AC 58 ms 4352 KB
4277 AC 62 ms 4352 KB
4648 AC 70 ms 4352 KB
4652 AC 70 ms 4352 KB
4656 AC 70 ms 4352 KB
4660 AC 70 ms 4352 KB
4664 AC 70 ms 4352 KB