【バンドリ】【ガルパ】6/13のハロハピ放送局で公開された情報まとめ

いやー毎回熱いね。

内容濃いね。

カバー曲

カサブタ

金色のガッシュベルのOPでした。

結構古い曲なので、公式MVが無い。

予想レベル25

アップデート情報

新エリアとして、月ノ森女子学院と駅前が追加になります。

ラウンジにMorfonicaメンバーが登場します。

エリア会話が追加されます。

コラボ情報

たぶん、これが今回の一番のメイン。

とある科学の超電磁砲Tとのコラボが発表されました。

今回はPoppin’Partyのコラボイベントが開催されます。

コラボに合わせて、カバー曲が追加になります。

とある科学の超電磁砲TのOPである「final phase」が追加になります。

予想レベル26

さらにMorfonicaがカバーする楽曲が追加予定です。

そして、すでに実装されているOnly my railgunのSPが追加になります。

予想レベル27

コラボイベントは6/30開始になります。

また、6/19~6/30イベント開始まで原曲でプレイできます。

実績には反映されませんが、イベントの練習にはちょうど良いのでは無いでしょうか。

【ほくでん】電気料金を初めて見直す

みなさん、電気料金って見直してます?

例えば、毎月ポストに入れられる、電気の検針票って見てますか?

これはほくでん(北海道電力)の場合ですが、たぶん、今まで何も考えずに電気を使用していた場合、検針票に「従量電灯」って、書かれていると思うんです。

それ、もしかしたら電気料金安くなるかもしれません。

以下、あくまでもほくでんの場合として書いています。

ほくでんの場合、料金シミュレーションができるサイトがありまして、

https://www.enemall.hepco.co.jp/simulation/

契約情報を入力しますと、よりお得な料金プランを出してくれるんです。

電気料金なんて昔と変わらんだろって思っていたら大間違いで、やっぱりいろんな電力会社がいろんな料金プランを用意しているので、いろいろ比較すると、よりお得なプランがあることが多いんです。

これはやらないよりやった方が良い。絶対。

【C#】【ピクロス】【ALTSEED】解析パターン12

前回までの状況はこちら。

最新ソースはこちら。(gitHub)

https://github.com/takishita2nd/Picross

次はここを処理します。

数字が2つなのに対して、マスは2箇所、マスクされたマスを挟んで塗られているので、2つの数字はこのマスに繋がります。

なので、赤いところで囲まれた部分は塗ることができないのが分かります。

なので、ここをマスクします。

考え方は、マスクされていない部分のマスを抽出、リスト化し、塗られているマスを含むリストの数と数字の数が一致していた場合、塗られていないリストのマスをマスクする、という方法で行きます。

        private void pattern12Row()
        {
            int row = 0;
            foreach (var rowlist in rowNumbers)
            {
                if (rowlist.IsAnalyzed())
                {
                    row++;
                    continue;
                }
                rowlist.AnalyzeDatas.Reverse();

                // マスクされていない連続したマスを数える
                var data = getSquareDataListUnMaskedRow(row);
                if(data == null)
                {
                    row++;
                    rowlist.AnalyzeDatas.Reverse();
                    continue;
                }

                // 塗られているマスがあるところを確認する
                int i = 0;
                bool[] flg = new bool[data.Count];
                for(i = 0; i < data.Count; i++)
                {
                    flg[i] = false;
                }
                i = 0;
                int count = 0;
                foreach(var dataList in data)
                {
                    foreach(var p in dataList)
                    {
                        if (p.IsPainted())
                        {
                            flg[i] = true;
                            count++;
                            break;
                        }
                    }
                    i++;
                }

                // 数字の数とflgの数を比較
                if(rowlist.AnalyzeDatas.Count == count)
                {
                    // flgが立っていないマスをマスクする
                    i = 0;
                    foreach(var dataList in data)
                    {
                        if(flg[i] == false)
                        {
                            foreach(var p in dataList)
                            {
                                p.Mask();
                            }
                        }
                        i++;
                    }
                }

                rowlist.AnalyzeDatas.Reverse();
                row++;
            }
        }
        private List<List<BitmapData>> getSquareDataListUnMaskedRow(int row)
        {
            List<List<BitmapData>> data = new List<List<BitmapData>>();
            List<BitmapData> dataList = new List<BitmapData>();
            for (int col = 0; col < colNumbers.Count; col++)
            {
                if (_bitmapData[row, col].IsMasked() == false)
                {
                    dataList.Add(_bitmapData[row, col]);
                }
                else
                {
                    if (dataList.Count != 0)
                    {
                        data.Add(dataList);
                        dataList = new List<BitmapData>();
                    }
                }
            }
            if (dataList.Count != 0)
            {
                data.Add(dataList);
            }

            if (data.Count == 0)
            {
                return null;
            }

            return data;
        }

同じ処理をColに対しても行います。

実行結果はこちら。

だいぶ良い感じに埋まってきました。