結果
| 問題 |
No.1205 Eye Drops
|
| コンテスト | |
| ユーザー |
hotman78
|
| 提出日時 | 2020-08-30 17:12:20 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 3,217 bytes |
| コンパイル時間 | 12,941 ms |
| コンパイル使用メモリ | 387,140 KB |
| 実行使用メモリ | 6,824 KB |
| 最終ジャッジ日時 | 2024-11-23 20:57:44 |
| 合計ジャッジ時間 | 14,515 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 34 WA * 2 RE * 1 |
コンパイルメッセージ
warning: unused variable: `n`
--> src/main.rs:11:9
|
11 | n:usize,m:usize,
| ^
|
help: `n` is captured in macro and introduced a unused variable
--> src/main.rs:139:13
|
10 | / input!{
11 | | n:usize,m:usize,
12 | | v:[(i32,i32);m],
13 | | }
| |_____- in this macro invocation
...
139 | let $var = read_value!($iter, $t);
| ^^^^
= note: `#[warn(unused_variables)]` on by default
= note: this warning originates in the macro `input_inner` which comes from the expansion of the macro `input` (in Nightly builds, run with -Z macro-backtrace for more info)
warning: variable does not need to be mutable
--> src/main.rs:122:13
|
10 | / input!{
11 | | n:usize,m:usize,
12 | | v:[(i32,i32);m],
13 | | }
| |_____- in this macro invocation
...
122 | let mut s = {
| ----^
| |
| help: remove this `mut`
|
= note: `#[warn(unused_mut)]` on by default
= note: this warning originates in the macro `input` (in Nightly builds, run with -Z macro-backtrace for more info)
ソースコード
#![allow(unused_imports)]
#![allow(dead_code)]
//use rust::library::data_structure::*;
//use rust::library::math::mod_int;
use crate::rust::*;
fn main() {
input!{
n:usize,m:usize,
v:[(i32,i32);m],
}
for i in 0..v.len(){
if i==0{
if !(v[i].1<v[i].0){
println!("{}","No");
return;
}
}else{
if !((v[i].1-v[i-1].1)<(v[i].0-v[i-1].0).abs()){
println!("{}","No");
return;
}
}
}
println!("{}","Yes");
}
pub mod rust {
pub mod library {
pub mod data_structure {
pub mod union_find {
pub struct UF{
par:Vec<usize>,
rank:Vec<usize>,
}
impl UF{
pub fn new(n:usize)->UF{
let mut v=vec![0;n];
for i in 0..n{
v[i]=i;
}
UF{
par:v,
rank:vec![1;n],
}
}
pub fn root(&mut self,x:usize)->usize{
if x==self.par[x]{
x
}else{
let par=self.par[x];
let res=self.root(par);
self.par[x]=res;
res
}
}
pub fn same(&mut self,a:usize,b:usize)->bool{
self.root(a)==self.root(b)
}
pub fn unite(&mut self,a:usize,b:usize)->bool{
let ap=self.root(a);
let bp=self.root(b);
if ap==bp{
return false;
}
if self.rank[ap]<self.rank[bp]{
self.par[bp]=ap;
self.rank[ap]+=self.rank[bp];
}else{
self.par[ap]=bp;
self.rank[bp]+=self.rank[ap];
}
return true;
}
pub fn size(&mut self,a:usize)->usize{
let ap=self.root(a);
self.rank[ap]
}
}
} // mod union_find
} // mod data_structure
pub mod math {
pub mod mod_int {
pub fn hello(){
println!("hello");
}
} // mod mod_int
} // mod math
pub mod util {
pub mod io {
#[macro_export]
macro_rules! input {
(source = $s:expr, $($r:tt)*) => {
let mut iter = $s.split_whitespace();
input_inner!{iter, $($r)*}
};
($($r:tt)*) => {
let mut s = {
use std::io::Read;
let mut s = String::new();
std::io::stdin().read_to_string(&mut s).unwrap();
s
};
let mut iter = s.split_whitespace();
input_inner!{iter, $($r)*}
};
}
#[macro_export]
macro_rules! input_inner {
($iter:expr) => {};
($iter:expr, ) => {};
($iter:expr, $var:ident : $t:tt $($r:tt)*) => {
let $var = read_value!($iter, $t);
input_inner!{$iter $($r)*}
};
}
#[macro_export]
macro_rules! read_value {
($iter:expr, ( $($t:tt),* )) => {
( $(read_value!($iter, $t)),* )
};
($iter:expr, [ $t:tt ; $len:expr ]) => {
(0..$len).map(|_| read_value!($iter, $t)).collect::<Vec<_>>()
};
($iter:expr, chars) => {
read_value!($iter, String).chars().collect::<Vec<char>>()
};
($iter:expr, usize1) => {
read_value!($iter, usize) - 1
};
($iter:expr, $t:ty) => {
$iter.next().unwrap().parse::<$t>().expect("Parse error")
};
}
} // mod io
} // mod util
} // mod library
} // mod rust
hotman78