【AtCoder反省】AtCoder Beginner Contest 166
Dの問題が意外とあっけなくとけた。
範囲については真面目に考えなかった。とりあえずえいやでいいや。みたいな。 あとは、大体考え方は同じ。
X = int(input()) a = [int( i/2)*((-1)**i) for i in range(1, 1000)] b = [int( i/2)*((-1)**i) for i in range(1, 1000)] """ 1 Aが正ならBは負または、Aより小さい正 2 Aが負ならBは負 3 X/(a+b)は、1以上の整数 """ find = False if X == 0: print(0) else: for a_ in a: for b_ in b: if a_ + b_ == 0: continue if a_ >= 0: if b_ >= 0 and b_ > a_: continue if a_ < 0: if b_ >= 0: continue """ if X%(a_+b_) != 0: print("hoge") continue """ if (a_**5) - (b_**5) == X: print(f"{a_} {b_}") find = True break if find: break
3 X/(a+b)は、1以上の整数
については、n乗同士の差の展開式で (a+b)(a4−a3b+a2b2−ab3+b4) = X となって、 (a4−a3b+a2b2−ab3+b4) = X/(a+b)
となるから左辺が整数だから右辺も整数になると思って制限設けたけどうまくいかなかったので外した。
自分はinputが何行にもわたるものが嫌いだ。だって面倒だから。 今回はBもCもそんな感じだった。けどそれで食わず嫌いしてると点数が稼げないんだろうから そこをちゃんとテンプレート化して楽になるようにしないといけないなと思いました。 環境も今はgoogle colabでやってるが、 ちゃんとした物を作りたい。けどめんどうなのでとりあえずほったらかし。
【AWSソリューションアーキテクト】Route53、データベース
Route53を利用したフェールオーバーな構成を実習した。
構成は↓ (udemy講義から引用)
この場合の構成を別リージョンに構築するときは、 構成をそのままコピーするよなコマンドはなくて全部手作業で作る。 超面倒な作業だしミスも発生しそう。
ついでにデータベースについても座学だけ。 実習は一旦飛ばした。お金がかかりそうだから一気にやれる時間を確実に確保しなければいけないから。
以下メモ書き
【AtCoder反省】AtCoder Beginner Contest 165
AtCoder Beginner Contest 165
をやった。が全然だめだった。AとBだけ解けたが、Cはめんどうでとかず Dは最後のテストだけが通らずに22時になってしまったのやめた。
知識やスキルもさることながら、ちゃんとした環境も整っていない。 ちゃん整えよ。
【AWSソリューションアーキテクト】Well Architected Framework
AWS 認定ソリューションアーキテクト – アソシエイトの試験内容
内容 | 比率 | |
---|---|---|
分野1 | 回復性の高いアーキテクチャを設計する | 34% |
分野2 | パフォーマンスに優れたアーキテクチャを定義する | 24% |
分野3 | セキュアなアプリケーションおよびアーキテクチャを定義する | 26% |
分野4 | コスト最適化アーキテクチャを設計する | 10% |
分野5 | オペレーショナルエクセレンスを備えたアーキテクチャを定義する | 6% |
これは、Well Architected Frameworkを活用できる人向けのテスト。
AWSアーキテクチャ設計の基礎
AZの選択
- 1つのリージョンにつき2つのAZを利用してアーキテクチャを設計することが基本(3つ以上はコスト効率が低下)
- マルチ AZにサーバーやDBの冗長構成を確立することで高い可用性を実現する
VPC
サブネットの分割
- サブネットはCIDR範囲で分割したネットワークセグメント
- ウェブアクセスの要否。
- /24以上の大きいサブネットを推奨
- 1つのAZに対して1つずつのパブとプライベートが基本
VPC間接続の設計
- VPC peeringにより2つのVPC間でのトラフィックルーティングが可能
- 接続が必要なVPCはそれぞれPeeringが必要、どのような接続にするか設計が必要
- アソシエイト試験は、well-architected frameworkで提唱されている5つの設計原則に沿った試験範囲になっている
Well Architected Framework
Reliability
- インフラストラクチャサービスの障害復旧の自動化など軽減設計
- 復旧手順のテストによる検証
- 需要変化に応じた水平方向へのスケーラビリティに高可用性の確保
- キャパシティの推測をやめる
- モニタリングと自動化を進める
基盤:IAM VPC AutoScaling ELB CloudFormation
変更管理 CloudTrail AWSConfig
障害管理 CloudWatch
Performance Effciency
コンピューティング:AutoScaling Lambda
ストレージ:EBS S3 Clacier EFS
データベース:RDS DynamoDB ElasticSearch Aurora Redshift
容量と時間のトレードオフ:CloudFront ElastiCache
Secuirty
- 全てのレイヤーにおいてセキュリティを適用
- アクセス追跡・モニタリングの確実な実施
- 条件ドリブンのアラートをトリガーとしてセキュリティイベントの応答を自動化
- AWS責任共有モデルに基づく対象範囲の保護に集中する
- セキュリティのベストプラクティスの自動化
- ソフトウェアベースのセキュリティ設定を使用し、迅速でコスト効率の良いスケーリングを安全に実行する
- 仮想サーバのカスタムベースラインイメージによる新サーバーへの適用自動化
- インフラストラクチャ全体のテンプレ化による管理
データ保護:ELB EBS S3 RDS KMS
権限管理:IAM MFA
インフラ保護:VPC
検出制御:CloudTrail CloudWatch AWSGuardDuty AmazonInspector
Cost Optimization
- 不必要なリソース削減
- 透明性のある費用割賦
- マネージド型サービスの利用によるコスト削減
- 固定の償却コストを変動コストへと転換
- スケールによるコストメリット
- データセンターへの投資不要化
需要と供給の一致:AutoScaling
コスト効率の高いリソース:EC2購入方式 TrustedAdvisor
支出の認識:CloudWatch 見積もりツール
継続した最適化:AWS最新情報 TrustedAdvisor
Operational Excellence
- コードに基づく実用実施
- ビジネス目的に沿った運用手順
- 定期的に小規模で増加的な変更実施
- 予期せぬイベントへの応答テスト
- 運用イベントと障害からの学習
- 運用手順を最新のものに保持すること
準備:CloudFormation Codeシリーズ RunbookPlaybook
運用:SystemManager ServiceCatalog CloudTrail AWSArtifact AWSGuardDuty CloudWatch AWSConfig APIGateway
進化:継続的かつ段階的な改善のために時間とリソースを割り当て、運用の有効性と効率性を向上する
【AWSソリューションアーキテクト】aws勉強の課題殴り書き
とりあえずここまで終わったが、 ハンズオンだけではどうもまだ理解できない部分が多く、最後の小テストでは半分くらいしか合っていないので、別途勉強し直しが必要と感じる。 特に、より理解を深める必要があるのは下記項目。
- ポリシー周り
- AMIとsnapshotの違い
ああもう他の課題ありそうだけど既に忘れたけどしょうがないか。
たとえば
この構成について、 nat ネットワークacl エンドポイント の使い分けの理由とか。わからん。 まあとりあえずざっと進める。
AWSでIAMアカウントでログインできないときにやったこと
udemyの
これだけでOK! AWS 認定ソリューションアーキテクト – アソシエイト試験突破講座(SAA-C02試験対応版)
を受けてるんですが、その中でIMAのAdminユーザー作ると言うステップがあり、 講義通りにユーザーを作りました。
しかし、ログインができない。。。
ログインエラーです。何度やっても。
パスワードを設定し直す
コンソールのパスワードから、
あらためてパスワードを設定しました。
すると解決。なぜかはわかりません。