山傘のプログラミング勉強日記[Java & Unity]

プログラミングに関する日記とどうでもよい雑記からなるブログです。

Java

Java言語で学ぶ デザインパターン入門 を読む その3

Template Method スーパークラスで処理の枠組みを定め、サブクラスで具体的内容を定めるようなデザインパターンをTemplete Methodパターンと呼びます。 抽象クラスと抽象メソッドを実装した具象クラスによってテンプレートを作成します。 www.itsenka.com 増…

AtCoder Beginner Contest 017 C - ハイスコア

考え方が分からない問題 C - ハイスコア 解き方が分からなくて、解説読んでも分からなかったです。 なんで、いもす法で解けるんでしょうか。

AtCoder Beginner Contest 100 D - Patisserie ABC

8通りで評価する abc100.contest.atcoder.jp どうやって解くのか分からなかったので解説を見ました。 典型的な問題なんでしょうか? 詳しくは解説を読むといいと思います。

AtCoder Beginner Contest 100 の感想

AtCoder Beginner Contest 100 今回は記念すべき100回目のコンテストということで、いつも以上に頑張ろうと思いました。まあ、参加回数そんなに多くはないですが。 https://abc100.contest.atcoder.jp/assignments A - Happy Birthday! 例題がかなりヒントに…

AtCoder Beginner Contest 015 C - 高橋くんのバグ探し

深さ優先探索 C - 高橋くんのバグ探し 全探索をする問題で、深さ優先探索を利用して解くことができます。

AtCoder Beginner Contest 014 C - AtColor

いもす法再び C - AtColor 問題文を読むと累積和を使うのかな?と思い、いもす法を使うことで解くことができました。 いもす法は前回勉強したことがあったので、助かりました。確か、yukicoderの括弧の問題でいもす法を始めて知ったと思います。

Java言語で学ぶ デザインパターン入門 を読む その2

第2章 Adapter Adapterパターンは似たようなクラスを繋げるような役割を持つクラスを設計します。例えば、ソフトウェアの新旧の互換性を持たせるためのクラスを用意したりするのに用いられます。

[yukicoder] No.36 素数が嫌い!

素数判定を行う問題 No.36 素数が嫌い! - yukicoder どのようにして解けばよいか分からなかったので、解説サイトを見ました。

Java言語で学ぶ デザインパターン入門 を読む その1

デザパタ本 今日からJavaのデザパタ本である「Java言語で学ぶ デザインパターン入門 (増補改訂版)」をやっていきたいと思います。 増補改訂版Java言語で学ぶデザインパターン入門作者: 結城浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/06/19…

可変長引数

わかりやすいオブジェクト指向編16.6 可変長引数 可変長引数は、メソッドに引数を渡すときに、仮引数の数をあらかじめ決めておかないで、可変にしておくことができます。

AtCoder Beginner Contest 013 C - 節制

線形計画法? C - 節制 AtCoderの過去問を解いていて気になった問題です。この問題は線形計画問題に似ていると思います。 実行可能領域に端点がない?ので、境界に近い格子点を調べる必要があります。解説を見て解答作ったんですが、1つの変数を固定すれば残…

内部クラス

内部クラス わかりやすいJavaオブジェクト指向編Chapter16の3節では、内部クラスについて学びます。 内部クラスについて www.sejuku.net コンストラクタ引数を指定していなくても、処理を担当する内部クラスに任せることができる。

[yukicoder] No.16 累乗の加算

問題 No.16 累乗の加算 - yukicoder 累乗をいかにして求めるかが肝です。 二分累乗法 累乗を求めるアルゴリズムに二分累乗法というものがあります。下記のサイトが参考になりました。これを利用して解答を得ます。

[ALDS1_5_D] The Number of Inversions

マージソートを利用した反転数の計算 プログラムコンテスト攻略のためのアルゴリズムとデータ構造7章6節 反転数をやっていきます。 反転数とは数列 ] において、 かつ である組 の個数を言います。バブルソートでも反転数がでてきますね。

AtCoder Beginner Contest 099 の感想

AtCoder Beginner Contest 099 結果 C問題まで解くことができました。D問題の題意は分かりましたが、どのようにして解いたらいいのか分かりませんでした。全探索でしょうか?

[yukicoder] No.11 カードマッチ [レベル: 2]

組み合わせの問題 No.11 カードマッチ - yukicoder

[yukicoder] No.7 プライムナンバーゲーム [レベル: 2]

Groudy数 問題 No.7 プライムナンバーゲーム - yukicoder 解説記事を読むとこのような問題はGroudy数というようです。

[AtCoder] AtCoder Beginner Contest 010 C - 浮気調査

二点間の距離に関する問題 C - 浮気調査 二次元の座標が整数で与えられているので、座標は格子点となります。 説明にある通り、二点間の距離は平方根を使う必要がありますが、評価する式を二乗することで平方根をなくすことができます。 平方根がなければ、…

列挙と列挙定数

enumキーワード わかりやすいJavaオブジェクト指向編の16章をやっていきます。 わかりやすいJavaオブジェクト指向編作者: 川場隆出版社/メーカー: 秀和システム発売日: 2010/03/25メディア: 単行本購入: 4人 クリック: 34回この商品を含むブログ (9件) を見る…

[yukicoder] No.3 ビットすごろく

全数探索? No.3 ビットすごろく - yukicoder 競技プログラミングを始めたての頃にこの問題を解いたことがありますが、提出したことはありませんでした。そのときの記事は、 yamakasa3.hatenablog.com になります。そのときの解き方は隣接行列を使って到達可…

スレッドの協調

スレッド間の通信 久しぶりにわかりやすJava オブジェクト指向編の記事を書きたいと思います。 わかりやすいJavaオブジェクト指向編作者: 川場隆出版社/メーカー: 秀和システム発売日: 2010/03/25メディア: 単行本購入: 4人 クリック: 34回この商品を含むブ…

[yukicoder] No.617 Nafmo、買い出しに行く

全数探索の問題 No.617 Nafmo、買い出しに行く - yukicoder この問題は全数探索をすることで解くことができると思います。つまり、すべての商品の選び方を元に重さを計算します。重さが になればその時点で解が見つかりますが、そうでない場合は全ての組み合…

[Aizu Online Judge] クイックソート (ALDS1_6_C: Quick Sort)

クイックソート クイックソート | アルゴリズムとデータ構造 | Aizu Online Judge プログラミングコンテスト攻略のためのアルゴリズムとデータ構造の7章3節 クイックソートをやります。C言語の回答をJavaで書き直しているだけですが、 タイプミスやエラーが…

[Aizu Online Judge] パーティション (ALDS1_6_B: Partition)

数値配列を基準値で分割する パーティション | アルゴリズムとデータ構造 | Aizu Online Judge プログラミングコンテスト攻略のためのアルゴリズムとデータ構造の7章2節のパーティションをやりました。パーティションは基準値を元に配列を整列させるアルゴリ…

[yukicoder] No.559 swapAB列

文字列に関する問題 No.559 swapAB列 - yukicoder レベル1.5の問題も残り5問となりました。今回は文字列に関する問題を取り上げます。 AとBからなる文字列Sが与えられます。この文字列SをAAA…ABB…Bとなるように並び替えます。 並び替えは隣同士の文字を入れ…

AtCoder Beginner Contest 009 C - 辞書式順序ふたたび

文字列の並び替え C - 辞書式順序ふたたび C問題にしては難しい問題と思いました。問題文にもそう書いてありましたが。 解説を読んでも分からなかったので、他人のコードを拝借し、自分でテストケースを作成しました。正解と自分の出力を照らし合わせること…

AtCoder Beginner Contest 098 B, C レビュー

B問題 B - Cut and Count 制約が なので、効率の悪いコードを書いても大丈夫そうです。 方針 全パターン調べます。 配列 を作るときに文字の重複を無くして作成します。この配列を と比較することで答えを得ます。

[yukicoder] No.446 ゆきこーだーの雨と雪 (1)

逆転の発想? No.446 ゆきこーだーの雨と雪 (1) - yukicoder この問題はプロジェクトコンテストのジャッジする側の問題となっています。答えが問題文で与えられたている状況下で、(ここで答えは数値の範囲)、その入力が正しいかどうかをジャッジするという…

[Aizu Online Judge]全探索 (ALDS1_5_A: Exhausive Search)

全探索 プログラミングコンテスト攻略のためのアルゴリズムとデータ構造の6章2節では、全探索のアルゴリズムについてでした。 6章では、再帰・分割統治法を取り扱います。プログラムで再帰といえば、階乗を求めるプログラムが思い浮かびます。 分割統治は、…

Java シリアライズ・デシリアライズ

わかりやすいJava オブジェクト指向編 わかりやすいJava オブジェクト指向編の12章は入力と出力に関する内容でした。テキストデータの入出力は勉強したことがあったんですが、Javaではなんとオブジェクトをファイルに出力することができるようです。また、C…