ここからはこちらのベストアンサーの方の回答を解説します。

ベストアンサーの方の回答に倣って、まずは3人であいこになる確率から考えます。面倒なのでここではグーはG、チョキはC、パーはPと表記します。例として4人ともグーを出せば{G,G,G,G}とします。


3人であいこになるとすれば、以下の2パターンが考えられます。
i)3人とも同じ手を出す。
ii)3人の手がそれぞれ違う。
和の法則でi)とii)の確率を足せば答えが出ます。


i)はグー、チョキ、パーそれぞれに3人が同じ手の場合が考えられますから3パターンです。
ii)はベストアンサーの方の解説通りですが、あえて該当するパターンを数えるとすると
{G,C,P}
{G,P,C}
{C,G,P}
{C,P,G}
{P,G,C}
{P,C,G}
以上の6パターンです。
i)とii)を足せば3+6=9パターンで、全てのパターンは3の3乗で27パターンですから9/27=1/3が答えです。

4人でじゃんけんをしてあいこになる確率 その1


この問題を理解するには、まず和の法則と積の法則の使い分けについて理解する必要があります。663さんを馬鹿にしているのかと怒られるかもしれませんが、どれくらいの知識があるのか分からないのでまずここから説明します。といっても当然細かい説明をしているサイトは既に存在しているので私は例題を示すまでにします。

今回は、和の法則と積の法則どちらを使って答えを導けばいいのかについて説明をしたいと思います。

和の法則と積の法則の使い分け / 数学A by OKボーイ |マナペディア|

「同時には起こらない」とは、時間のことではなく、論理的に両立しないことを表しています。

和の法則
  • 例1.サイコロを2つ同時に投げて、目の和が7または2になる確率を求めよ

これくらいなら、数えて片付きますね。
7の場合は以下の6パターン
1-6,2-5,3-4,4-3,5-2,6-1
2の場合は1パターンです。
1-1
合わせて計7パターンが存在します。サイコロを2つ同時に投げるので、全パターンは6*6の36パターンです。


答えは7/36です。

  • 例2.大槻くんがサイコロを3つ同時に振って、全ての目が1を出す確率を求めよ

1が出る確率は1/6ですから、1/6の3乗で答えは1/216です。


ここまでが理解できれば和の法則と積の法則に大分感覚が掴めるのではないでしょうか。

Twitterで画像ズーム

PageExpand等で画像にマウスカーソルを乗せると画像が拡大する機能を使っているのですが、これを減らせないか考えました。CSSで機能します。

@-moz-document url-prefix("https://twitter.com") {
.AdaptiveMedia-photoContainer img{-moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;}
.AdaptiveMedia-photoContainer img:hover {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);}
}

この辺からです。
https://qiita.com/midasmn/items/d930a5cb1e77828265be
あくまで拡大しているだけなので完全な画像が表示されるわけではありませんが、これで気になるようならTwitter 原寸びゅーで表示しています。こちらはユーザスクリプト版もあるので安心ですね。

CSS絡み(Stylishとか)

display:noneをGresemonkeyで機能させる手法はもう既に何度か紹介していますので、marginやpaddingを弄る方法です。これも例は西野さんのブログです。

var result = document.evaluate('//*[@class="article-date" or @class="article-title" or @class="article-header" or @class="article-footer" or @class="article-share-buttons"]',document, null, 7, null);
        for(var i=0;i<result.snapshotLength;i++)
	{
  		result.snapshotItem(i).style.margin="0";
        result.snapshotItem(i).style.padding="0";
	}

Autopagerize

以前のようにhistory.pushState()等で履歴を弄るのは悪手だと思ったので、次のページに進む為にキー操作を感知するようにしました。例は西野さんのブログです。

document.onkeydown = pageMove;

function pageMove()
{
  if (event.keyCode == 78)  //「N」が押されたか確認
  {
    //history.back();
      var result = document.evaluate('//li[@class="prev" or @class="paging-next"]/a',document, null, 7, null);
      location.href=result.snapshotItem(0).href;
  }
}

Nを押すと次のページへ飛びます。Autopagerizeだとフッターが見れないよとかの不満がある方はどうぞ。

理解はできる(使うとは言ってない)

Firefox57.0、FirefoxQuantumへのバージョンアップがリリースされました。拡張性より安定性を取ったMozillaの判断は理解できますし、当初想定していたよりは影響は抑えられましたが、それでも私のFirefoxユーザ史上最大の衝撃であることは間違いありません。使えなくなったアドオンは相当数に上ります。なんとか平常に機能する程度には代替を見つけることが出来ましたが、現状Firefoxを起動する気になれません。残念です。


いつまでも落ち込んでいられませんので、アドオンやエクステンションを減らす方法をいくつか考えました。

迷惑にならない程度に

大ヒット中の絵本『えんとつ町のプペル』を全ページ無料公開します(キンコン西野

大ヒット中の絵本『えんとつ町のプペル』を全ページ無料公開します(キンコン西野)|新R25 - 20代ビジネスパーソンのバイブル

上のページで横スクロールできないか考えました。文章が消えたり途中真っ白の画像が2回ほど入りますが仕様です

// ==UserScript==
// @name        puperu
// @namespace   http://d.hatena.ne.jp/jigendaddy/
// @include     http://spotlight-media.jp/article/370505056378315909
// @version     1
// @grant       none
// ==/UserScript==
var xpath = '//div[@class="p-item__image"]/img';
  var hit   = document.evaluate(xpath, document, null, 7, null);
var links = '';
for(var i=0; i<hit.snapshotLength; i++){
      links += '<td><img src="' + hit.snapshotItem(i).src + '" style="position:relative">' + '</td>';
    }

document.body.innerHTML = '';
var area = document.createElement('table')
var area2= document.createElement('tr')
area2.innerHTML = links;
area.appendChild(area2);
 /*var area = document.createElement('div');
  area.style.display = 'block';
  area.style.position = 'absolute';
  area.style.top = 0;
  area.style.left = 0;
  area.style.textAlign = 'left';
  area.innerHTML = links;*/

  document.body.appendChild(area);
  document.body.style.display = 'block';

//西野さんの顔写真を消す
var xpath2='//td[last()]'
var hit2   = document.evaluate(xpath2, document, null, 7, null);
hit2.snapshotItem(0).style.display='none';