void 数字替换使最大(int 数, int 替) {//缘由https://bbs.bccn.net/viewthread.php?tid=499343&page=1&extra=#pid2719397 int 取 = 0, 合 = 数, 借 = 0, 幕 = 10; while (替)if ((借 = 替 % 幕) > 取)取 = 借, 替 /= 幕; else 替 /= 幕; while (幕 < 数) if ((借 = (((数 / 幕)*幕) + (取*(幕 / 10)) + (幕>10 ? (数 % (幕 / 10)) : 0))) > 合) 合 = 借, 幕 *= 10; else 幕 *= 10; if ((借 = (取*(幕 /= 10)) + (数 % 幕))>合)合 = 借; cout << 合 << endl; }