Skip to content

Commit d0cf2f5

Browse files
committed
abc036 - c
1 parent cdeeac8 commit d0cf2f5

File tree

8 files changed

+42
-26
lines changed

8 files changed

+42
-26
lines changed

abc/src/abc036.rs

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
use proconio::marker::*;
2+
use proconio::*;
3+
pub fn main() {
4+
input! {
5+
n: usize,
6+
a: [usize; n]
7+
}
8+
let mut b = a.clone();
9+
b.sort();
10+
b.dedup();
11+
12+
let res = a
13+
.iter()
14+
.map(|&x| b.binary_search(&x).unwrap())
15+
.for_each(|x| println!("{}", x));
16+
}

abc/src/abc076.rs

+8-8
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,18 @@ use proconio::input;
22
use proconio::marker::Chars;
33
fn main() {
44
input! {
5-
S: Chars,
6-
T: Chars,
5+
s: Chars,
6+
t: Chars,
77
}
88
let mut start = !0;
9-
if S.len() < T.len() {
9+
if s.len() < t.len() {
1010
println!("UNRESTORABLE");
1111
return;
1212
}
13-
for i in 0..=S.len() - T.len() {
13+
for i in 0..=s.len() - t.len() {
1414
let mut flg = true;
15-
for j in 0..T.len() {
16-
if S[i + j] != '?' && S[i + j] != T[j] {
15+
for j in 0..t.len() {
16+
if s[i + j] != '?' && s[i + j] != t[j] {
1717
flg = false;
1818
break;
1919
}
@@ -26,11 +26,11 @@ fn main() {
2626
println!("UNRESTORABLE");
2727
return;
2828
}
29-
let mut ans = S
29+
let mut ans = s
3030
.iter()
3131
.map(|&x| if x == '?' { 'a' } else { x })
3232
.collect::<Vec<char>>();
33-
for (ix, c) in T.iter().enumerate() {
33+
for (ix, c) in t.iter().enumerate() {
3434
ans[start + ix] = *c;
3535
}
3636
println!("{}", ans.into_iter().collect::<String>());

abc/src/abc201.rs

+5-5
Original file line numberDiff line numberDiff line change
@@ -27,19 +27,19 @@ pub fn main() {
2727
}
2828
let cnt = abc[1] + i;
2929
if cnt == 1 {
30-
res += 1 * aCb(abc[2], i)
30+
res += 1 * acb(abc[2], i)
3131
} else if cnt == 2 {
32-
res += (2 * 4 + aCb(4, 2)) * aCb(abc[2], i)
32+
res += (2 * 4 + acb(4, 2)) * acb(abc[2], i)
3333
} else if cnt == 3 {
34-
res += 3 * 4 * 3 * aCb(abc[2], i)
34+
res += 3 * 4 * 3 * acb(abc[2], i)
3535
} else if cnt == 4 {
36-
res += 4 * 3 * 2 * aCb(abc[2], i)
36+
res += 4 * 3 * 2 * acb(abc[2], i)
3737
};
3838
}
3939
println!("{}", res);
4040
}
4141

42-
fn aCb(a: usize, b: usize) -> usize {
42+
fn acb(a: usize, b: usize) -> usize {
4343
let mut res = 1;
4444
for i in 0..b {
4545
res *= a - i;

abc/src/abc220.rs

+4-4
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,20 @@ pub fn main() {
99
n:usize,
1010
a:[usize;n]
1111
}
12-
let MOD = 998244353;
12+
let modulo = 998244353;
1313
let mut dp = vec![vec![0; 10]; n];
1414
dp[0][a[0]] = 1;
1515
for i in 1..n {
1616
for j in 0..10 {
1717
let f = (j + a[i]) % 10;
1818
let g = (j * a[i]) % 10;
1919
dp[i][f] += dp[i - 1][j];
20-
dp[i][f] %= MOD;
20+
dp[i][f] %= modulo;
2121
dp[i][g] += dp[i - 1][j];
22-
dp[i][g] %= MOD;
22+
dp[i][g] %= modulo;
2323
}
2424
}
2525
for i in 0..10 {
26-
println!("{}", dp[n - 1][i] % MOD);
26+
println!("{}", dp[n - 1][i] % modulo);
2727
}
2828
}

abc/src/abc248.rs

+6-6
Original file line numberDiff line numberDiff line change
@@ -11,20 +11,20 @@ pub fn main() {
1111
k:usize
1212
}
1313
let mut res = 0;
14-
let MOD = 998244353;
14+
let modulo = 998244353;
1515
let mut dp = vec![vec![0; 3010]; 51];
1616
dp[0][0] = 1;
1717
for i in 0..n {
1818
for j in 0..=k {
1919
for l in 1..=m {
20-
dp[i + 1][j + l] += dp[i][j] % MOD;
21-
dp[i + 1][j + l] %= MOD;
20+
dp[i + 1][j + l] += dp[i][j] % modulo;
21+
dp[i + 1][j + l] %= modulo;
2222
}
2323
}
2424
}
2525
for i in n..=k {
26-
res += dp[n][i] % MOD;
27-
res %= MOD;
26+
res += dp[n][i] % modulo;
27+
res %= modulo;
2828
}
29-
println!("{}", res % MOD);
29+
println!("{}", res % modulo);
3030
}

abc/src/abc271.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ pub fn main() {
1515
for i in 0..n {
1616
let (a, b) = ab[i];
1717
for j in 0..=s {
18-
if (dp[i][j]) {
18+
if dp[i][j] {
1919
if j + a <= s {
2020
dp[i + 1][j + a] = true;
2121
}

abc/src/main.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ mod abc017;
1010
mod abc019;
1111
mod abc027;
1212
mod abc035;
13+
mod abc036;
1314
mod abc039;
1415
mod abc040;
1516
mod abc048;
@@ -95,5 +96,5 @@ mod agc019;
9596
mod arc142;
9697
mod pa_ken2019;
9798
fn main() {
98-
abc151::main();
99+
abc036::main();
99100
}

dp/src/main.rs

-1
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,6 @@ fn i() {
4848
for i in (n / 2 + 1)..n + 1 {
4949
ans += dp[n][i];
5050
}
51-
println!("{:?}", dp);
5251
println!("{}", ans);
5352
}
5453

0 commit comments

Comments
 (0)