結果
| 問題 | No.2397 ω冪 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-01-27 10:34:33 |
| 言語 | C++23 (gcc 15.2.0 + boost 1.89.0) |
| 結果 |
AC
|
| 実行時間 | 99 ms / 2,000 ms |
| コード長 | 808 bytes |
| 記録 | |
| コンパイル時間 | 2,576 ms |
| コンパイル使用メモリ | 238,524 KB |
| 実行使用メモリ | 7,844 KB |
| 最終ジャッジ日時 | 2026-01-27 10:34:43 |
| 合計ジャッジ時間 | 4,613 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 41 |
ソースコード
#include <iostream>
#include <boost/dynamic_bitset/dynamic_bitset.hpp>
using bs=boost::dynamic_bitset<>;
bool cmp(const bs& x,const bs& y){
size_t hx=0,hy=0,mx=0,my=0,cx=0,cy=0,k;
while(true){
while(true){
if(0==(k=y.find_first(hy)+1))break;
if(cmp(bs(20,k-hy-1),bs(20,my))){hy=k;continue;}
my=k-hy-1;hy=k;
if(cmp(bs(20,my),bs(20,mx))){cy=0;continue;}
cy++;
if(cmp(bs(20,mx),bs(20,my)))break;
if(cx<cy)break;
}
if(k==0)return false;
while(true){
if(0==(k=x.find_first(hx)+1))break;
if(cmp(bs(20,k-hx-1),bs(20,mx))){hx=k;continue;}
mx=k-hx-1;hx=k;
if(cmp(bs(20,mx),bs(20,my))){cx=0;continue;}
cx++;
if(cmp(bs(20,my),bs(20,mx)))break;
if(cy<=cx)break;
}
if(k==0)return true;
}
}
int main(){
bs N,M;
std::cin>>N>>M;
std::cout<<(cmp(N,M)?"Yes":"No");
}