#include <iostream>
#include <unordered_set>
using namespace std;
int main() {
int n, m;
// รับค่าจำนวนเต็ม n และ m
cout << "Enter n: ";
cin >> n;
cout << "Enter m: ";
cin >> m;
// สร้าง set เพื่อเก็บหมายเลขที่ต้องการตัดออก
unordered_set<int> excludedNumbers;
// วนลูปแสดงหมายเลขจาก 0 ถึง n-1
for (int i = 0; i < n; ++i) {
// ตรวจสอบว่า i เป็น m หรือค่าที่ต้องตัดออกหรือไม่
if (excludedNumbers.find(i) != excludedNumbers.end()) {
continue; // ข้ามการแสดงหมายเลขนี้
}
cout << i << " "; // แสดงหมายเลข i
// คำนวณและเพิ่มค่า 2m + 1 และ 2m + 2 ลงใน set
int new_m1 = 2 * m + 1;
int new_m2 = 2 * m + 2;
excludedNumbers.insert(new_m1); // เพิ่มค่าใหม่ลงใน set
excludedNumbers.insert(new_m2); // เพิ่มค่าใหม่ลงใน set
// อัปเดต m เป็นค่าใหม่ที่คำนวณ
m = new_m1; // อัปเดต m ให้เป็นค่าที่ได้จาก 2m + 1 สำหรับการวนลูปครั้งถัดไป
}
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dW5vcmRlcmVkX3NldD4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKaW50IG1haW4oKSB7CiAgICBpbnQgbiwgbTsKICAgIAogICAgLy8g4Lij4Lix4Lia4LiE4LmI4Liy4LiI4Liz4LiZ4Lin4LiZ4LmA4LiV4LmH4LihIG4g4LmB4Lil4LiwIG0KICAgIGNvdXQgPDwgIkVudGVyIG46ICI7CiAgICBjaW4gPj4gbjsKICAgIGNvdXQgPDwgIkVudGVyIG06ICI7CiAgICBjaW4gPj4gbTsKICAgIAogICAgLy8g4Liq4Lij4LmJ4Liy4LiHIHNldCDguYDguJ7guLfguYjguK3guYDguIHguYfguJrguKvguKHguLLguKLguYDguKXguILguJfguLXguYjguJXguYnguK3guIfguIHguLLguKPguJXguLHguJTguK3guK3guIEKICAgIHVub3JkZXJlZF9zZXQ8aW50PiBleGNsdWRlZE51bWJlcnM7CiAgICAKICAgIC8vIOC4p+C4meC4peC4ueC4m+C5geC4quC4lOC4h+C4q+C4oeC4suC4ouC5gOC4peC4guC4iOC4suC4gSAwIOC4luC4tuC4hyBuLTEKICAgIGZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKSB7CiAgICAgICAgLy8g4LiV4Lij4Lin4LiI4Liq4Lit4Lia4Lin4LmI4LiyIGkg4LmA4Lib4LmH4LiZIG0g4Lir4Lij4Li34Lit4LiE4LmI4Liy4LiX4Li14LmI4LiV4LmJ4Lit4LiH4LiV4Lix4LiU4Lit4Lit4LiB4Lir4Lij4Li34Lit4LmE4Lih4LmICiAgICAgICAgaWYgKGV4Y2x1ZGVkTnVtYmVycy5maW5kKGkpICE9IGV4Y2x1ZGVkTnVtYmVycy5lbmQoKSkgewogICAgICAgICAgICBjb250aW51ZTsgIC8vIOC4guC5ieC4suC4oeC4geC4suC4o+C5geC4quC4lOC4h+C4q+C4oeC4suC4ouC5gOC4peC4guC4meC4teC5iQogICAgICAgIH0KICAgICAgICAKICAgICAgICBjb3V0IDw8IGkgPDwgIiAiOyAgLy8g4LmB4Liq4LiU4LiH4Lir4Lih4Liy4Lii4LmA4Lil4LiCIGkKICAgICAgICAKICAgICAgICAvLyDguITguLPguJnguKfguJPguYHguKXguLDguYDguJ7guLTguYjguKHguITguYjguLIgMm0gKyAxIOC5geC4peC4sCAybSArIDIg4Lil4LiH4LmD4LiZIHNldAogICAgICAgIGludCBuZXdfbTEgPSAyICogbSArIDE7CiAgICAgICAgaW50IG5ld19tMiA9IDIgKiBtICsgMjsKICAgICAgICAKICAgICAgICBleGNsdWRlZE51bWJlcnMuaW5zZXJ0KG5ld19tMSk7ICAvLyDguYDguJ7guLTguYjguKHguITguYjguLLguYPguKvguKHguYjguKXguIfguYPguJkgc2V0CiAgICAgICAgZXhjbHVkZWROdW1iZXJzLmluc2VydChuZXdfbTIpOyAgLy8g4LmA4Lie4Li04LmI4Lih4LiE4LmI4Liy4LmD4Lir4Lih4LmI4Lil4LiH4LmD4LiZIHNldAogICAgICAgIAogICAgICAgIC8vIOC4reC4seC4m+C5gOC4lOC4lSBtIOC5gOC4m+C5h+C4meC4hOC5iOC4suC5g+C4q+C4oeC5iOC4l+C4teC5iOC4hOC4s+C4meC4p+C4kwogICAgICAgIG0gPSBuZXdfbTE7ICAvLyDguK3guLHguJvguYDguJTguJUgbSDguYPguKvguYnguYDguJvguYfguJnguITguYjguLLguJfguLXguYjguYTguJTguYnguIjguLLguIEgMm0gKyAxIOC4quC4s+C4q+C4o+C4seC4muC4geC4suC4o+C4p+C4meC4peC4ueC4m+C4hOC4o+C4seC5ieC4h+C4luC4seC4lOC5hOC4mwogICAgfQogICAgCiAgICByZXR1cm4gMDsKfQ==