結果
| 問題 |
No.3145 Astral Parentheses Sequence
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2025-05-16 22:58:56 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 866 bytes |
| コンパイル時間 | 12,282 ms |
| コンパイル使用メモリ | 400,436 KB |
| 実行使用メモリ | 7,848 KB |
| 最終ジャッジ日時 | 2025-05-16 22:59:13 |
| 合計ジャッジ時間 | 13,813 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 WA * 2 |
| other | AC * 10 WA * 35 |
コンパイルメッセージ
warning: unused import: `proconio::marker::*`
--> src/main.rs:1:5
|
1 | use proconio::marker::*;
| ^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused variable: `m`
--> src/main.rs:15:9
|
15 | m: usize,
| ^ help: if this is intentional, prefix it with an underscore: `_m`
|
= note: `#[warn(unused_variables)]` on by default
warning: unused variable: `k`
--> src/main.rs:26:9
|
26 | for k in 1..=n / 3 {
| ^ help: if this is intentional, prefix it with an underscore: `_k`
warning: variable does not need to be mutable
--> src/main.rs:23:9
|
23 | let mut ans = 0;
| ----^^^
| |
| help: remove this `mut`
|
= note: `#[warn(unused_mut)]` on by default
warning: type alias `Map` is never used
--> src/main.rs:5:6
|
5 | type Map<K, V> = BTreeMap<K, V>;
| ^^^
|
= note: `#[warn(dead_code)]` on by default
warning: type alias `Set` is never used
--> src/main.rs:6:6
|
6 | type Set<T> = BTreeSet<T>;
| ^^^
warning: type alias `Deque` is never used
--> src/main.rs:7:6
|
7 | type Deque<T> = VecDeque<T>;
| ^^^^^
warning: type alias `Heap` is never used
--> src/main.rs:8:6
|
8 | type Heap<T> = BinaryHeap<T>;
| ^^^^
warning: constant `MOD` is never used
--> src/main.rs:10:7
|
10 | const MOD: u64 = 998_244_353;
| ^^^
warning: function `pow_mod` is never used
--> src/main.rs:33:4
|
33 | fn pow_mod(mut a: usize, mut n: usize, m: usize) -> usize {
| ^^^^^^^
ソースコード
use proconio::marker::*;
use proconio::*;
use std::collections::*;
type Map<K, V> = BTreeMap<K, V>;
type Set<T> = BTreeSet<T>;
type Deque<T> = VecDeque<T>;
type Heap<T> = BinaryHeap<T>;
const MOD: u64 = 998_244_353;
fn main() {
input! {
n: usize,
m: usize,
}
if n % 3 != 0 {
println!("0");
return;
}
let mut ans = 0;
// 正しい括弧列の中で、 `()` が `k` 個あるようなもの `f(k)`
// `sum f(k) * 2.pow(n / 3 - k)`
for k in 1..=n / 3 {
// `f` をどうやって求めるのかわかりません。
}
println!("{}", ans);
}
fn pow_mod(mut a: usize, mut n: usize, m: usize) -> usize {
let mut res = 1;
while n > 0 {
if n & 1 == 1 {
res *= a;
res %= m;
}
a *= a;
a %= m;
n >>= 1;
}
res
}