{"author_name":"rsk0315","provider_url":"https://hatena.blog","provider_name":"Hatena Blog","height":"190","version":"1.0","width":"100%","type":"rich","url":"https://rsk0315.hatenablog.com/entry/2022/09/25/214915","categories":[],"title":"\u30d3\u30c3\u30c8\u4e26\u5217\u624b\u6cd5\u306e\u57fa\u790e\u3068\u57fa\u790e\u4ee5\u5916\u306a\u3069","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Frsk0315.hatenablog.com%2Fentry%2F2022%2F09%2F25%2F214915\" title=\"\u30d3\u30c3\u30c8\u4e26\u5217\u624b\u6cd5\u306e\u57fa\u790e\u3068\u57fa\u790e\u4ee5\u5916\u306a\u3069 - \u3048\u3073\u3061\u3083\u3093\u306e\u65e5\u8a18\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","author_url":"https://blog.hatena.ne.jp/rsk0315/","blog_title":"\u3048\u3073\u3061\u3083\u3093\u306e\u65e5\u8a18","blog_url":"https://rsk0315.hatenablog.com/","published":"2022-09-25 21:49:15","image_url":null,"description":"\u601d\u3044\u7acb\u3063\u305f\u306e\u3067\u66f8\u3044\u3066\u307f\u307e\u3059\u3002 \u5c0e\u5165 \u524d\u63d0 \u57fa\u790e\u6f14\u7b97 \u5358\u9805\u30de\u30a4\u30ca\u30b9 \u6700\u3082\u53f3\u306e\u8af8\u3005\u306b\u95a2\u3059\u308b\u6f14\u7b97 \u305d\u306e\u4ed6\u7c21\u5358\u306a\u6f14\u7b97 \u5178\u578b\u7684\u306a\u767a\u60f3\u306e\u7d39\u4ecb \u306b\u3053\u306b\u3053\u3067\u5408\u308f\u305b\u308b\u3084\u3064\uff08\u5206\u5272\u7d71\u6cbb\uff09 count ones reverse suffix parity \u4e8c\u5206\u63a2\u7d22 most-significant set bit (msb) least-significant set bit (lsb) de Bruijn sequence \u306e\u5229\u7528 exact log \u5024\u304c\u5c0f\u3055\u3044\u5834\u5408\u306e\u8a08\u7b97 distribute count ones is-zero from bits msb reverse parity search \u5fdc\u7528 O(1\u2026"}