mtcd2426

20代営業。学習記録、備忘録などなど。

mtcd2426

20代営業。学習記録、備忘録などなど。

マガジン

  • 学習記録

  • AtCoder

    AtCoderのABCを投稿。毎日頑張る。

  • C#を学ぶ会

    C#についてのあれこれ。

最近の記事

【学習記録】1/11・12

■やったこと 1/11 ・noteアカウント情報変更 ・Qiitaアカウント情報変更 ・Qiita投稿(AtCoder VSCode設定) https://qiita.com/mtcd2426/items/00b22591f0917b1d9329 ・Cloverをインストール ・AtCoder用プロジェクト作成 1/12 ・ABC187 A-D(C#) ・Git勉強(ブランチ操作)

    • 【学習記録】2021/01/10

      ■やったこと ・GitHubアカウント再発行 ・Git練習 ・AtCoder C++環境整備 ・AtCoder ABC187 ■知ったこと ・Git練習 リポジトリ作成、クローン、コミットなど基本的なこと。 ・AtCoder C++環境整備

      • 【ASP.NET MVC】複数のsubmitボタンがある場合の、ビュー、コントローラーの書き方

        ■nameがボタンごとに異なる場合 ビューのコード ```HTML@using(Html.BeginForm()){ @Html.AntiForgeryToken(); // テキストボックス等の入力項目の設定 <input type="submit" name="Search" value="検索"> <input type="submit" name="Clear" value="クリア">}``` コントローラー ```C#[HttpPost][

        • ABC168D

          終わったばかりですが、初めて実戦で幅優先探索を使えて気分が良いので、気持ちが乗っているうちに書いてしまいます。 問題文 あるところに、洞窟があります。 洞窟にはN個の部屋とM本の通路があり、部屋には1からNの、通路には1からMの番号がついています。通路iは部屋Aiと部屋Biを双方向につないでいます。どの2部屋間も、通路をいくつか通って行き来できます。部屋1は洞窟の入り口がある特別な部屋です。 洞窟の中は薄暗いので、部屋1以外の各部屋に1つずつ道しるべを設けることにしました。

        【学習記録】1/11・12

        マガジン

        • 学習記録
          2本
        • AtCoder
          14本
        • C#を学ぶ会
          5本

        記事

          【C#】複数の変数をまとめて扱う(構造体/タプル/列挙型)

          複数の変数、データ型をまとめて扱う際に、クラス以外にも取り扱う方法があるようなので、その特徴や使い方(使い分け)をまとめていきます。 構造体構造体はクラスと似ていて、メンバ変数やメソッドを定義して複数の変数を取り扱うことができます。両社の違いとしては、構造体は値型、クラスは参照型となり、構造体はその型の値を直にほじすることができます。 基本的に構造体でできることはクラスでもできますが、構造体のメリットとしては、値を直接操作することができるため、読み書きが高速化できるなど、メ

          【C#】複数の変数をまとめて扱う(構造体/タプル/列挙型)

          【C#】配列やリストのすべての要素を特定の値で初期化

          配列やリストを特定の値で初期化したい場合のやり方。 LINQのEnumerable.Repeatを使えば良さそう。 ToArray、ToListを使ってそのまま配列、リストを宣言できる。 using System;using System.Linq;class Program{ static void Main(){ var ary = Enumerable.Repeat(5,10).ToArray(); foreach(int date

          【C#】配列やリストのすべての要素を特定の値で初期化

          【C#】同じ文字が繰り返す文字列

          同じ文字をいくつか連結したいとき、例えば、*を10個つなげたいとき。 string s = new string('*',10); これでOK。 文字列をいくつか繰り返したいとき、例えば、"カタ"を10個つなげたいとき。 一発でさらっと書けるやり方はないらしい。 やり方としては、StringBuilderを使ったり、一回別の文字で置き換えてReplaceで置き換えたり。 文字列を指定回数繰り返した文字列を取得する こちらにまとまってました。

          【C#】同じ文字が繰り返す文字列

          【C#】文字列の操作(入力・一致・重複・配列)

          AtCoderの問題から文字列の操作を学んでいこうと思い備忘録も兼ねて書いていきます。 題材はこちら。 ABC063 ―――――――――――――――――――――――― 問題文 英小文字からなる文字列Sが与えられます。Sに含まれる文字がすべて異なるか判定してください。 制約 • 2≤|S|≤26,ここで|S|はSの長さを表す。 • Sは英小文字のみからなる。 入力 入力は以下の形式で標準入力から与えられる。 S 出力 Sに含まれる文字がすべて異なる場合はyes(英小文字)、

          【C#】文字列の操作(入力・一致・重複・配列)

          ABC062C

          解けなかった…。 ―――――――――――――――――――――――― 問題文 縦Hブロック、横Wブロックの板チョコがあります。 すぬけ君は、この板チョコをちょうど3つのピースに分割しようとしています。 ただし、各ピースはブロックの境目に沿った長方形でなければなりません。 すぬけ君は3つのピースの面積 (ブロック数) をできるだけ均等にしようとしています。 具体的には3つのピースの面積の最大値をSmax、最小値をSminとしたとき、Smax−Sminを最小化しようとしています。

          ABC163CD

          日曜に開催されたものですが、サーバー負荷でアクセスできなかったものです。最新のものはD問題まで解いていこうと思います。 がんばれAtCoder! まずはC問題。 ―――――――――――――――――――――――― 問題文 N人の社員からなる会社があり、各社員には1,...,Nの社員番号が割り当てられています。 社員番号1の社員以外の全ての社員には、自分より社員番号が小さい直属の上司がちょうど1人います。 XさんがYさんの直属の上司であるとき、YさんはXさんの直属の部下である

          ABC061C

          バケツソートと呼ばれるタイプの問題らしい。 ―――――――――――――――――――――――― 問題文 空の配列が1つあります。 この配列に、整数を配列に挿入する操作をN回行います。 i(1≦i≦N)回目の操作では、配列に整数aiをbi個挿入します。 N回の挿入操作後の配列の中で、K番目に小さい数を求めてください。 例えば、配列が{1,2,2,3,3,3}の時、4番目に小さい数は3となります。 制約 • 1≦N≦10^5 • 1≦ai,bi≦10^5 • 1≦K≦b1…+…b

          ABC060C

          ―――――――――――――――――――――――― 問題文 とある銭湯には、スイッチを押すT秒間お湯が出るシャワーがあります。 なお、お湯が出ているときにスイッチを押すと、そのタイミングからT 秒間お湯が出つづけます。 お湯の出る時間がT 秒間延長されるわけではないことに注意してください。 このシャワーの前をN 人の人がスイッチを押して通り過ぎていきます。i 人目の人は、1 人目の人がスイッチを押したti 秒後にスイッチを押します。 お湯が出る時間の総和は何秒かを求めてください

          ABC059

          ―――――――――――――――――――――――― 問題文 長さ N の数列があり、i 番目の数は ai です。 あなたは 1回の操作でどれか 1 つの項の値を 1 だけ増やすか減らすことができます。 以下の条件を満たすために必要な操作回数の最小値を求めてください。 • すべてのi(1≦i≦n) に対し、第 1 項から第 i 項までの和は 0 でない • すべてのi(1≦i≦n−1) に対し、i 項までの和と i+1 項までの和の符号が異なる 制約 • 2≦n≦10^5 • |

          【AtCoder】ABC058C

          まだまだエラーはでますが、C#も少し慣れてきたので、C問題中心に戻します。 ―――――――――――――――――――――――― 問題文 すぬけ君は、文字列の書かれた紙から文字をいくつか切り抜いて、並び替えて別の文字列を作るのが好きです。 明日になると、すぬけ君は文字列 S1,...,Snのうちどれか 1つが書かれた紙がもらえます。 すぬけ君は文字列を作る事をとても楽しみにしているので、どんな文字列を作るか計画を立てることにしました。 ただし、すぬけ君はまだどの文字列が書かれ

          【AtCoder】ABC058C

          【C#】クラスの構成

          AtCoderやっていて、C#での関数の作り方がわからなかったので、ついでにクラスについても調べてみたので簡単にまとめたいと思う。(ほとんどメモ書きで見づらいですがご勘弁を) ■クラス ある特定の状態や機能に着目してまとめたもの class クラス名{  //フィールド private/public 変数を宣言; //コンストラクタ public クラス名( 引数 ){ 初期値を設定 } //メソッド  //メソッド 型 メソッド名( 引数 ){ 処理; return 式

          【C#】クラスの構成

          ABC162

          昨日のコンテストについて。C#はまだ慣れないず(エラー出まくる)、レートが下がるのも嫌なので、今回はC++で挑戦。 結論から言うと、ボロボロでした。C問題でつまずいた。 途中までなぜか最小公倍数をひたすら求めたり、3つの数の最大公約数の求め方をぐだぐだ考えたり、計算量が間に合わずTLEになりまくったりで大荒れ(O(K^4)とかやってた)。 シンプルに3つの数a,b,cの最大公約数gcd(a,b,c)は、まず2数の最大公約数gcd(a,b)を求め、gcd(a,b)と残りの