3日目
こんにちわ。
今日はドトールコーヒーに来て勉強をしています。
ドトールコーヒーは安くて、wi-fi、コンセントもある。めちゃくちゃ学生の味方だと思ってます。
ここだけの話で本当はスタバに行きたいけど、お金がないかつ田舎すぎてスタバが近くにないだけ、、、、
俺もプログラミング勉強して、都会に出るぞーー😏と意気込んで3年が経った男です。
この日記もいつまで続くのか、、、
そんなことはおいといて、今日やったことはこちら
- ABC問題の今後の勉強計画
- 実際にやってみた
この三本立てです。よろしくお願いします。
ABC問題の今後の勉強計画
まず、一回自分は何のためにプログラミングを勉強しているのか、、と改めて考えたところ
理由はは3つあって
- 就職活動でのコーディングテストを受かるため
- 情報系の学生としての威厳を保つため
- プログラミングかけたらモテそうだから
3つ目の理由は置いといて、こんな理由です。
やっぱ1番目の理由がめちゃくちゃ大きいです。
こんな形で今焦って勉強しているって感じです。
勉強スケジュール
今のところは2月にコーディングテストをある程度解けるようにしたい。
そのため、ネットで調べたとことB、C問題が解けるようになっていればある程度いけると言うことを見ました。
なので、2月まで毎日過去問も含めて、B問題とC問題をアウトプットする環境を作ります。
では、最初はどんな感じでやっていくか、、、
そしたら@drken さんのこちらの記事を参考にし、今週一週間の目標をとりあえず決めました。
とりあえず、今週はpracticeの問題を解く!!
例題、類題も含めてB、C問題を完璧にしていきたいです。
では、今週の予定表
日付 | 内容 |
---|---|
12/11 | practice1~4 |
12/14 | practice5~7 |
12/15 | practice8~10 |
12/16 | 12/11,12のできなかった問題の類題を解く |
12/17 | 12/13のできなかった問題の類題を解く |
こんな形でまずは攻めたいと思います。 |
では、今日の問題を行きましょう〜〜
ABC問題解いてみた
Practice1
まずは自分の書いたコードから
s,w = list(map(int,input().split()))
if s*w%2==0:
print('Even')
else:
print('Odd')
この問題は2つの特徴があるかなと思ってます。
- 奇数、偶数の判定できるか
- 標準入力の文字を整数型に変え方わかっているか
この2つができるたら書けるかなと思いました。
もしこのコードをもう少し短くするなら
print("Odd" if a * b % 2 else "Even")
このように書き換えれます!!
自然と使えるようになりてー
Practice2
まずは自分の書いたコードから
num = list(map(int,input()))
print(sum(num))
昨日使えなかったsumが使えたーーー
これは成長ですねーー
嬉しいーーーー
この問題のポイントは
- list()関数をしっているかどうか
- 0と1をどのように判定するか
自分は今回1の個数を数えるだけだったので足しちゃいました。
もし、0の個数を数えるなら
- 今回のように1の個数を数えて、全体から引く
- 0をif文とかでカウントする
他の人のコードには
print(S.count('1'))
1の文字をカウントするっていうのもありました。
これならif文を使わなくても綺麗に書けますね
Practice3
まずは自分の書いたコードはこちらから
def check(count,num,num_list):
for i in range(num):
if num_list[i]%2 !=0:
print(count)
break
else:
num_list[i] = num_list[i]/2
else:
count +=1
check(count,num,num_list)
num = int(input())
num_list = list(map(int,input().split()))
count = 0
check(count,num,num_list)
この問題のポイントは
- 繰り返しの処理が行えるか
- 線形探索ができているかどうか
この処理を線形探索ということを知った。。。これからかっこつけて使っていきますね
Prctice4
A = int(input())
B = int(input())
C = int(input())
X = int(input())
count = 0
for a in range(A+1):
for b in range(B+1):
for c in range(C+1):
if X==a*500+b*100+c*50:
count += 1
print(count)
これは全探索というやり方。
少しずつ、アルゴリズムの勉強をしていかないといけない。。。
っていうのを掴んだ1日でした。