続、やりたいこと

色々悩んでました

 

HTB攻略

U...3 D...3 T...5

O...チートシート、資格(OSCP)、称号

本腰入れてやれてない状況 今回のタイミングで時間は取れるようになるので、いい機会 地味に課金してるので・・・ リタイアマシンはWriteUpがあるのと、セキュリティに触れられるのはGood マシン数絞れば時間は減らせる

 →目標をActiveMachineにして一つでもやる!とするか、確実にできるRetiredMachineにするか、悩みどころ

  →Retiredだけにして、きちんと数をこなしてみる

   チートシートをうめるつもりで3台くらいやれればいいのでは 10時間ほど 

 

・バグバウンティ

U...4 D...5 T...5

O...見つかれば報奨金、知識メモ

花形、でも高嶺の花 難しさも時間もかかるが、幅広い知識は学べる 明確なアウトプットがメモくらいしかない、大器晩成、消費時間無限 やるなら元プログラマーの意地を見せたいところ 前提知識に徳丸本で理論武装が必須になるか?

 →徳丸本を見つつ、流れをきちんと勉強するにとどめる、探さなくていいので、探す流れを作ってまとめてみる 20時間 

 

・徳丸本勉強

U...4 D...2 T...3

O...資格(徳丸試験)

みんな大好き徳丸本 以前全部を読み切れてなかったが難解な話等は出てこないので、時間を一定数かければきちんと終えられて知識も身につく 得た知識をどうやって持続してくかは課題 24時間くらいあててもいいかもしれない

 →記載したように24時間をあててみて、全網羅を目指す、600ページくらいあるので、24で割ると1時間25ページのペース、きつい気がするけどやってみる 24時間 

 

・レッドチーム本勉強

U...3 D...4 T...4

O...知識メモ

分厚い、しかも2冊 読めばいい、のだが、知識がついていかない部分があるので難易度も高い 買った当初に読んでから、時間をおいて読んだらわかる範囲が増えてた これ読むなら完全セキュリティ寄りで、HTBのおともにって感じ 成果が見えにくい

 →難しいのでパス 

 

株式投資勉強

U...5 D...3 T...3 O...ポートフォリオ、お金

とある方に感化されたやーつその1 社会人の常識だなぁ?知ってるに越したことはない 本買って読むスタイルになると思うので、読み終えればおしまい うまくいけばお金増えるけど期待はしてない ぶっちゃけインデックスでFA とか冷めてる

  →とりあえず保留

 

・外国株式投資勉強

U...5 D...3 T...4

O...ポートフォリオ、お金

とある方に感化されたやーつその2 日本オワコンなので、どうせ力入れるならこちらかと ただ、とっつきにくさがあると思う あと良い教材かどうかの判断がつきづらい 先人のツイートから参考図書は把握済み 極論読むだけ、実践は別次元

 →市場の勉強もそうだが、そもそも今やってる保険について今一度理解を深めたい、その上で足りない知識を増やすことにする 15時間 

 

AtCoder(アルゴリズム)勉強

U...4 D...3 T...3

O...レート

毎回悔しい思いしてるアレ それなりの時間をかければそれなりの成果がでるのではないかと ただし、結局コンテスト時間と寝かしつけかぶったらアウトです なので、いつ始めても同じならちょっと寝かしとくものありかも

 →友人捕まえてどこまでやるかを相談しようかな、まずは茶色入れればいい、アルゴリズムの勉強+実践を10時間くらいでかわれるな 10時間

 

機械学習勉強

U...3 D...4 T...4

O...資格、業務知識(可能性、kaggle

G検定は持ってるので、 E目指して頑張ってみるのは手 ただし、競合が多すぎるので今更感が半端ない もしかしたら業務で使うかもしれないが、まだわからない 知り合いが強いので声かければ引っ張ってもらえるかも

 →ぶっちゃけはやりに乗るとしたらこれ、最低限、環境作るだけでもいいかと思っている、環境構築のための時間として最低限とる 10時間

 

統計学勉強

U...5 D...2 T...3

O...資格、業務知識(可能性

昔から苦手意識あってずっとそのまま 組み合わせらへんからマジでわからなくて雰囲気でなんとかしてきた 確率+統計でいまから学びなおせば多少はまともになるかも 正直応用はいくらでも効きそうなのでやるにこしたこたぁない

  →リターンが大きいからやりたいが、あまり時間はかけられない、やるなら20時間くらいかけて学びなおし、突破口となる教本が欲しいところ・・・ 20時間

 

 合計すると119時間、20時間分足りない・・・

ただ、正確には今のところ

9/26~30 5日 

10/1~10/31 31日 

11/1 1日

 →計37日となる さらに3連休頑張ったら 3日で計40日

  40日×3時間で120時間!

 

ここまでやってギリギリ間に合うレベル

 

続きは次回

やりたいこと

やりたいことを並べてみる

HTB攻略
U...3 D...3 T...5
O...資格(OSCP)、称号

・バグバウンティ
U...4 D...5 T...5
O...見つかれば報奨金、知識メモ

・徳丸本勉強
U...4 D...2 T...3
O...資格(徳丸試験)

・レッドチーム本勉強
U...3 D...4 T...4
O...知識メモ

株式投資勉強
U...5 D...3 T...3
O...ポートフォリオ、お金

・外国株式投資勉強
U...5 D...3 T...4
O...ポートフォリオ、お金

AtCoder(アルゴリズム)勉強
U...4 D...3 T...3
O...レート

機械学習勉強
U...3 D...4 T...4
O...資格、業務知識(可能性

統計学勉強
U...5 D...2 T...3
O...資格、業務知識(可能性

続、唐突にやりたいこと書き出してみる

前回の続き

まず、育休は1ヶ月
交渉次第で2ヶ月とれる??
1日に取れる自分の時間は、3時間くらいの予感

6時-8時 2時間
23時-24時 1時間

30日×3時間で約90時間

やりたいことについて、次の観点でレベル分け

U お役立ち度 1-5
 学習によって業務、趣味、生活等で役に立つか

D 難易度 1-5
 取り組むためのハードル、精神的なものも含む

T 消費時間 1-5
 勉強にかかるであろう時間

O アウトプット
 勉強した結果が見えるもの

HTB攻略
U... D... T...
O...

バグバウンティ
U... D... T...
O...

徳丸本勉強
U... D... T...
O...

レッドチーム本勉強
U... D... T...
O...

株式投資勉強
U... D... T...
O...

外国株式投資勉強
U... D... T...
O...

AtCoder(アルゴリズム)勉強
U... D... T...
O...

機械学習勉強
U... D... T...
O...

統計学勉強
U... D... T...
O...

おし、埋めてくぞ…

唐突にやりたいこと書き出してみる

諸事情あり、1ヶ月ほど育休取得予定
その間に少しでも何か自分の武器になるものを勉強したいなぁと。
時間はかかるけど、やりたいことをまとめてみた


HTB攻略
バグバウンティ
徳丸本勉強
レッドチーム本勉強
株式投資勉強
外国株式投資勉強
AtCoder(アルゴリズム)勉強
機械学習勉強
統計学勉強


うーん、やりたいことだらけ…
ゆっくり潰していくとして、何からやるのがいいかしら?

AtCoder 過去解いていない問題で使用されるアルゴリズム列挙

過去記事で177の解いていない(レベルの高い)問題について、

せめて使用するアルゴリズムだけでも把握しておこうと思い、

解説をきちんと読んでメモだけしようと思います。

あとで少しでもアルゴリズムを学ぶんだ・・・・。

 

176

D...幅優先探索

E...全探索

F...DP

 

175

D...有向辺グラフ

E...DP

F...ダイクストラ

 

公式解説があるのは上記だけでした。

いやぁ、こうやって指針だけでも示してもらえるのはありがたい。

 

この感じだと、幅優先探索とDPをしっかり使えるようになっていきたいなと。

 

では。

AtCoder ABC 177の復習

前回の続き

177のC問題ができなかったので、解説を見て再実装しました。
C - Sum of product of pairs

実際にTLEとなった実装は以下

n=int(input())
sum=0
a=list(map(int, input().split()))
for i in range(n):
  for j in range(i+1, n):
    #print(i,j)
    sum+=a[i]*a[j]
  sum = sum%((10**9)+7)

print(sum)

解き始め当初は、
あーどう考えてもO(n**2)やん、どうすればいいの・・・と頭が固ーくなってました。
配列の前後の数値を使ってみたり、pypy使ってみたりと小手先の手法を色々試しましたが当然ダメでした。


解説を見て、先に合計値を計算してから順に当てはめていくことを試すと、サクッと解けました
うーん、これはきちんと紙に書いて自分でひらめくべきだった・・・。

n=int(input())
sums=0
a=list(map(int, input().split()))
b = sum(a)
for i in range(n):
  b -= a[i]
  sums += a[i]*b
  sums = sums%((10**9)+7)
print(sums)

やっぱりじっくり腰を据えてやる時間が欲しいなぁ

それから、D, E, F問題の解説を一応確認しておきます。
アルゴリズムの名前だけでも知っておきたいから・・・。

D...Union-Findを用いて解ける問題
E...高速素因数分解、およびエラトステネスの篩を用いて解ける問題
F...セグメント木、順序集合を用いて解ける問題

エラトステネスの篩は後ほど実装したい!

以上。

AtCoder ABC 177に参加しました

といっても結構前ですが。
今回はC問題解けず、悔しい・・・。

解説を見てなるほど、と納得したので、
後ほどこれだけ解いてみたいと思います。

A - Don't be late
コメントなし!

a,b,c=map(int, input().split())
if a<=b*c:
  print('Yes')
else:
  print('No')

B - Substring
今回、ドはまりしてしまいました
範囲について、正確に頭の中でイメージする力が足りない
きちんと紙に書くなりして整理しなければ。

S=input()
T=input()
k = len(T)
ans=k
lim=0
for i in range(len(S)-len(T)+1):
  for j in range(k):
    #print(i, j, S[i+j],T[j])
    if S[i+j]!=T[j]:
      lim+=1
  if lim<=ans:
    ans=lim
  lim=0
print(ans)

C問題は、別で記載します。

以上。