AtCoder Beginner Contest 275を振り返る。
実力
Rate:487(茶色)
https://atcoder.jp/users/osirukosan今回の目標
ABCの3完!Dは着手できたらOK!言語
Java
結果
無念の1完。
2完すらできず、残念。悔しい。きつついRate変動
487 ⇨ 458
A問題 2分23秒でAC
最も長い橋の位置を答える問題。
特に手が止まることもなく、一瞬でAC。
import java.util.*;
public class Main {
public static void main(String[] args) {
// 入力読み込み
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int max = 0;
int t = 0;
for (int i = 0; i < n; i++) {
int c = sc.nextInt();
if(max < c){
max = c;
t = i+1;
}
}
System.out.println(t);
sc.close();
}
}
B問題 ACできず。
とても大きな桁(10^18)のABC -DEFの計算結果をmod=998244353で割ったあまり答える問題。
式の分解自体はわかったのに、最後、modを足す必要があることに気づかず、あれ??あれれ??となって、わからず死亡。。
悔しいなぁ。。ちなみに4分くらいで初回の解答できたならR500くらい。
import java.util.*;
public class Main {
public static void main(String[] args) {
// 入力読み込み
Scanner sc = new Scanner(System.in);
long mod = 998244353;
long A = sc.nextLong() % mod;
long B = sc.nextLong() % mod;
long C = sc.nextLong() % mod;
long D = sc.nextLong() % mod;
long E = sc.nextLong() % mod;
long F = sc.nextLong() % mod;
A = (A * B) % mod;
A = (A * C) % mod;
D = (D * E) % mod;
D = (D * F) % mod;
System.out.println((A+mod-D)%mod);
sc.close();
}
}
C問題 ACできず。。
#が正方形の配置になっている箇所を探して数え上げる問題 。
B問題がなぜうまくいかないのかわからず、残り40分くらいからC問題やってた。
正方形の配置になっているかをどのように判定するかが味噌。1辺の長さとその他3辺の長さが一致していれば正方形とみなす方針で着手したが、辺の選び方をうまく指定できなかったために、ACできず。(と思われる。)
もうちょっとでACできそう。解けていれば、R700-600くらい。
import java.util.*;
public class Main {
public static void main(String[] args) {
// 入力読み込み
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int[] A = new int[N];
int[] T = new int[2*N+1];
for (int i = 0; i < N; i++) {
A[i] = sc.nextInt();
}
for (int i = 0; i < N; i++) {
T[2*i+1] =T[A[i]-1]+1;
T[2*i+2] =T[A[i]-1]+1;
}
for (int i = 0; i < 2*N+1; i++) {
System.out.println(T[i]);
}
sc.close();
}
}
// Set<Long> list = new HashSet<>();
D問題 以下、着手できず
E問題
F問題
G問題
EX問題
思ったとおりの計算結果ならなかった時、修正する能力が必要。
競プロチックな問題はそう種類がないので、早く慣れて、引き出しを増やすようにしたい。
この記事が参加している募集
この記事が気に入ったらサポートをしてみませんか?