0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AtCoder日記 2日目

Last updated at Posted at 2024-10-25

目次

1.今日行ったこと
2.次やりたいこと
3.所感

今日行ったこと

AtCoder Beginners Selectionの続きを3問解く

以下を解いた。といっても最初の2問は解説見て理解しながら写経みたいになっていた。
ABC081B - Shift only
ABC087B - Coins

いざ実践と思いこっちは自分で0から書いてみた。(エラー出た部分だけ調べたりした。)
ABC083B - Some Sums

answer.py
N, A, B = map(int, input().split())

sum = 0

# 1からNまでの数字を網羅するfor文
for i in range(N+1):
    # Nの桁数を測る
    if (N+1)/10 == 0:
        if A <= N+1 and N+1 <= B:
            sum = sum + N+1
    elif (N+1)/100 == 0 and (N+1)/10 >= 1:
        k = (N+1)/10
        l = (N+1)%10
        if A <= k+l and k+l <= B:
            sum = sum + N+1
    elif (N+1)/1000 == 0 and (N+1)/100 >= 1:
        k = (N+1)/100
        l = (N+1)/10
        m = (N+1)%10
        if A <= k+l+m and k+l+m <=B:
            sum = sum + N+1            
    elif (N+1)/10000 == 0 and (N+1)/1000 >= 1:
        k = (N+1)/1000
        l = (N+1)/100
        m = (N+1)/10
        n = (N+1)%10
        if A <= k+l+m+n and k+l+m+n <=B:
            sum = sum + N+1

print(sum)

結果は通らず、眠気の限界が来たのであきらめる。。。
この実装だけでわからないことが何個かあったから、次は以下調査したい。

・int(input())じゃ数値を受け取れなかった理由(mapを使う理由?)
・各桁の上手な取り方(10とか100とかの割った数で取るしか思いつかず)
・mapとlistの使い方

AtCoder Beginner Contest 376をチラ見

企業のコーディングテストとかで例えられるABC問題がどのくらいの難易度なのか?を知りたくてチラ見してみた。
以下感想。

A - Candy Button
頑張れば解けそう。
ボタンを押して飴貰える→数値0に初期化して次押すときC秒経っていなかったら初期化せず次のTに遷移~
という流れが想像できたため。

B - Hands on Ring (Easy)
ルールを理解するのに2分ぐらいかかった。
いわゆる探索系なんだろうけど、さっぱり実装イメージが思いつかず。Lが5だからR動かすときに5経由しちゃダメってどう実装で表すのかがわからない。。。

C - Prepare Another Box
ルールを理解するのに4分ぐらいかかった。
Bとよりかは解けそうなイメージあり。Aの最小値>Bの最小値だったらもう終わりで、それ以外の場合は比較しまくってなんとか。。。みたいな実装イメージになった。

解説動画あるっぽいし、時間あるときに見てみたい。(解説手厚いの凄い)
https://atcoder.jp/contests/abc376/editorial

次やりたいこと

ABC083B - Some Sumsの復習
・この記事に書いたわからない部分を調査する
・AtCoder Beginners Selectionを全問解く(残り6問)
AtCoder Beginner Contest 376の解説動画を見てみる
・AWS Certified Cloud Practitionerの受験に向けて勉強

所感

ちょっとずつ分からないことが分かるようになってきた。(無知の知)
いわゆるアルゴリズムのテンプレを覚えて、それを問題の解法に当てはめていく形になっていくのだろうか?
あと、どこまでやったらコンテストチャレンジするかの目安も決めたい。(当分先だろうけど)

0
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?