2021牛客暑期多校训练营1

A Alice and Bob

#include <bits/stdc++.h>
#define inf 0x7fffffff
#define ll long long
#define int long long
//#define double long double
//#define double long long
#define re int
//#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define mk make_pair
#define P pair < int , int >
using namespace std;
const int mod=1e9+7;
//const int inf=1e18;


int a[]={2,3,5,7,9,11,12,14,15,17,19,20,22,24,26,28,29,31,32,33,35,37,38,40,42,44,45,47,49,50,52,53,55,57,58,60,62,64,65,67,68,70,72,74,75,77,79,81,82,83,85,86,87,89,90,92,94,95,97,99,101,103,105,106,108,110,112,113,115,116,118,120,122,123,125,126,127,129,131,132,133,135,136,138,139,141,142,143,145,146,148,149,151,152,154,156,158,160,161,163,164,166,168,170,171,172,174,176,177,179,180,182,184,185,186,188,189,190,192,194,195,197,198,199,201,203,205,207,208,210,212,213,214,215,217,218,220,221,223,224,226,228,229,231,232,234,236,238,239,241,243,244,245,246,248,250,252,253,255,256,258,259,261,263,264,266,268,270,271,273,274,276,278,280,281,283,285,286,288,289,291,293,295,296,298,300,301,303,305,306,307,309,311,312,313,315,317,319,321,322,324,325,327,329,331,332,334,336,337,338,339,340,342,343,345,346,348,349,350,352,354,355,356,357,358,359,361,362,364,366,367,369,370,372,374,375,377,379,381,382,384,386,388,390,391,393,395,397,399,400,402,404,405,407,408,410,411,413,415,417,419,420,421,423,425,427,429,430,431,432,434,435,437,439,440,442,443,445,446,448,449,451,452,453,454,456,458,459,460,461,463,464,466,467,469,470,472,473,474,476,477,478,479,481,483,485,487,489,491,492,494,496,498,499,501,503,504,505,507,508,509,511,513,514,515,516,518,520,521,523,525,527,529,530,531,532,534,535,537,539,540,541,543,545,547,548,549,551,553,555,556,557,558,560,562,563,564,565,567,568,570,572,574,576,577,579,580,582,583,585,586,588,590,592,593,594,595,596,598,599,600,601,603,605,606,607,609,610,612,614,616,617,619,620,622,624,626,628,630,632,634,635,637,639,641,643,644,646,648,649,651,653,655,656,657,658,660,661,663,664,666,668,669,671,673,675,676,678,679,680,682,683,685,687,689,691,693,695,697,699,700,702,704,706,708,710,711,713,714,716,718,719,721,722,723,725,726,728,730,732,734,735,737,739,740,742,743,744,746,747,748,750,751,752,754,756,757,759,760,761,763,765,766,768,770,771,772,774,776,778,780,782,784,785,787,788,790,791,793,794,796,797,799,800,802,803,805,807,808,810,811,813,814,815,816,818,820,822,824,825,827,828,830,831,833,835,836,838,839,841,842,844,845,847,848,849,851,852,853,855,857,859,861,862,863,864,866,868,869,870,871,873,874,875,876,877,879,881,882,883,885,886,888,890,892,893,895,896,898,899,901,902,904,906,908,909,910,912,914,915,917,918,920,922,923,924,926,927,929,931,933,935,937,939,940,942,943,944,946,948,950,952,954,956,957,959,960,962,963,964,966,967,969,971,972,973,975,976,978,980,981,982,984,985,986,988,989,991,993,994,995,996,998,999,1000,1002,1004,1005,1006,1007,1009,1010,1012,1013,1015,1016,1017,1019,1020,1022,1023,1025,1027,1029,1031,1032,1034,1035,1036,1038,1040,1042,1043,1045,1046,1048,1050,1051,1053,1055,1057,1058,1060,1061,1062,1064,1065,1067,1068,1069,1070,1072,1074,1075,1076,1078,1079,1081,1082,1084,1085,1087,1088,1089,1090,1092,1094,1096,1098,1100,1102,1104,1106,1107,1109,1110,1112,1113,1115,1116,1117,1118,1120,1122,1124,1125,1127,1129,1130,1131,1133,1134,1136,1137,1139,1140,1142,1143,1144,1145,1147,1148,1149,1150,1152,1153,1155,1156,1158,1159,1161,1163,1164,1165,1167,1169,1171,1173,1174,1175,1177,1178,1180,1182,1183,1185,1186,1188,1190,1192,1194,1196,1197,1199,1200,1201,1202,1204,1206,1208,1210,1211,1212,1214,1216,1217,1219,1221,1223,1224,1225,1227,1229,1231,1233,1235,1236,1237,1238,1239,1241,1243,1245,1247,1248,1250,1251,1253,1254,1256,1257,1258,1260,1261,1263,1264,1265,1267,1268,1269,1271,1272,1274,1276,1278,1279,1281,1283,1284,1285,1287,1289,1290,1292,1294,1295,1297,1299,1300,1301,1302,1304,1305,1307,1309,1310,1311,1313,1314,1316,1317,1319,1320,1322,1324,1325,1327,1329,1331,1333,1334,1336,1337,1339,1340,1342,1343,1344,1346,1348,1350,1351,1352,1354,1356,1357,1358,1360,1361,1363,1365,1366,1368,1369,1370,1371,1372,1374,1375,1376,1378,1380,1381,1383,1384,1386,1387,1389,1390,1392,1394,1396,1397,1399,1400,1402,1403,1405,1407,1408,1410,1412,1413,1414,1416,1418,1419,1420,1422,1424,1425,1427,1428,1430,1432,1434,1436,1437,1438,1440,1441,1442,1443,1445,1446,1448,1449,1451,1453,1455,1457,1458,1460,1461,1463,1464,1465,1467,1468,1470,1472,1474,1475,1477,1479,1480,1481,1483,1484,1486,1487,1489,1490,1491,1492,1494,1495,1497,1499,1501,1502,1504,1505,1507,1508,1509,1510,1512,1513,1514,1516,1518,1520,1521,1523,1524,1525,1527,1529,1531,1532,1534,1536,1537,1539,1541,1543,1545,1546,1547,1549,1550,1551,1553,1554,1555,1557,1559,1560,1561,1563,1565,1566,1568,1569,1571,1573,1574,1575,1577,1579,1580,1581,1583,1584,1586,1587,1588,1589,1590,1592,1594,1596,1597,1599,1601,1603,1604,1605,1606,1608,1609,1610,1611,1612,1614,1616,1617,1619,1621,1622,1624,1625,1626,1628,1630,1632,1633,1635,1636,1638,1640,1642,1643,1645,1646,1647,1648,1650,1651,1653,1655,1657,1659,1661,1663,1664,1665,1667,1668,1669,1670,1672,1673,1674,1676,1678,1679,1681,1682,1684,1686,1687,1689,1690,1691,1692,1694,1695,1697,1698,1699,1700,1701,1702,1704,1706,1707,1708,1710,1712,1713,1715,1716,1717,1719,1721,1723,1724,1726,1728,1729,1730,1732,1734,1735,1736,1738,1740,1741,1743,1744,1745,1746,1748,1749,1751,1753,1754,1756,1758,1760,1761,1762,1764,1765,1767,1769,1771,1772,1774,1776,1777,1779,1780,1781,1782,1784,1785,1787,1789,1790,1792,1794,1795,1797,1798,1799,1801,1802,1804,1805,1807,1808,1810,1811,1812,1814,1816,1817,1818,1820,1822,1824,1825,1827,1828,1830,1831,1832,1834,1835,1837,1838,1840,1841,1842,1844,1845,1847,1849,1850,1852,1854,1856,1857,1858,1859,1861,1862,1863,1865,1866,1868,1869,1871,1873,1875,1876,1877,1878,1879,1881,1882,1884,1886,1888,1890,1891,1893,1894,1896,1897,1899,1900,1901,1903,1904,1906,1908,1909,1911,1913,1914,1916,1917,1919,1921,1922,1923,1925,1926,1927,1929,1931,1932,1933,1934,1935,1937,1938,1940,1941,1942,1944,1947,1949,1951,1952,1953,1955,1956,1958,1959,1961,1963,1964,1966,1968,1969,1970,1972,1974,1975,1977,1978,1980,1981,1983,1985,1986,1988,1989,1991,1992,1994,1996,1997,1999,2001,2003,2004,2006,2007,2009,2011,2013,2015,2016,2018,2020,2021,2023,2025,2026,2028,2029,2030,2031,2033,2035,2036,2038,2039,2040,2042,2044,2045,2047,2048,2050,2051,2053,2055,2056,2058,2059,2061,2062,2064,2066,2067,2069,2070,2072,2074,2076,2077,2079,2080,2082,2083,2084,2085,2087,2088,2090,2091,2092,2094,2096,2098,2100,2102,2103,2105,2107,2109,2110,2111,2113,2114,2116,2118,2119,2121,2122,2124,2125,2126,2128,2129,2131,2132,2134,2137,2139,2140,2142,2144,2145,2147,2148,2150,2151,2152,2154,2155,2157,2158,2160,2161,2163,2165,2167,2168,2170,2172,2173,2174,2176,2178,2179,2180,2182,2184,2186,2187,2189,2191,2193,2194,2195,2197,2198,2200,2202,2203,2205,2207,2208,2209,2211,2212,2214,2215,2217,2219,2221,2222,2224,2226,2227,2228,2229,2230,2232,2233,2234,2236,2237,2239,2241,2242,2244,2246,2248,2249,2251,2252,2253,2254,2255,2256,2258,2259,2260,2261,2263,2265,2267,2268,2270,2271,2273,2274,2275,2276,2279,2280,2281,2283,2285,2287,2288,2290,2292,2293,2295,2297,2298,2300,2301,2302,2304,2305,2306,2308,2310,2312,2314,2316,2317,2318,2320,2321,2322,2324,2326,2328,2329,2331,2332,2334,2335,2338,2340,2341,2343,2344,2345,2347,2349,2350,2352,2353,2354,2356,2358,2360,2361,2362,2364,2365,2366,2368,2369,2371,2372,2373,2374,2375,2376,2378,2379,2380,2381,2383,2384,2385,2387,2388,2390,2392,2393,2395,2397,2398,2400,2402,2404,2406,2408,2409,2411,2413,2415,2417,2419,2420,2421,2423,2425,2426,2427,2429,2431,2433,2434,2435,2437,2439,2441,2442,2443,2444,2446,2448,2449,2451,2452,2453,2455,2457,2459,2461,2462,2465,2467,2469,2472,2473,2475,2477,2478,2479,2481,2482,2484,2485,2487,2488,2489,2490,2492,2493,2495,2497,2498,2499,2501,2502,2504,2505,2507,2508,2509,2511,2513,2515,2516,2518,2519,2520,2521,2523,2525,2527,2529,2530,2532,2533,2535,2537,2538,2540,2541,2542,2543,2544,2546,2548,2549,2550,2551,2553,2554,2555,2556,2557,2559,2560,2561,2563,2564,2566,2567,2569,2570,2572,2574,2575,2576,2578,2579,2580,2581,2582,2584,2585,2586,2587,2590,2592,2594,2595,2597,2599,2600,2602,2604,2606,2607,2609,2611,2613,2615,2616,2618,2619,2620,2621,2623,2625,2626,2627,2629,2630,2632,2634,2636,2637,2638,2640,2642,2644,2645,2647,2649,2650,2651,2652,2654,2656,2657,2659,2661,2663,2664,2665,2667,2668,2669,2671,2673,2675,2677,2678,2679,2680,2682,2684,2687,2689,2691,2693,2694,2696,2698,2699,2700,2702,2704,2706,2707,2708,2709,2711,2712,2714,2715,2717,2718,2720,2722,2723,2725,2726,2728,2729,2731,2732,2733,2735,2736,2737,2738,2740,2741,2742,2743,2745,2746,2747,2749,2751,2753,2754,2756,2757,2758,2759,2761,2763,2765,2767,2768,2770,2771,2773,2775,2777,2778,2779,2780,2782,2784,2785,2787,2788,2789,2791,2792,2794,2795,2797,2798,2800,2801,2802,2804,2806,2808,2809,2810,2812,2813,2814,2816,2818,2820,2823,2825,2826,2828,2829,2830,2832,2834,2836,2838,2839,2840,2842,2843,2845,2846,2848,2849,2850,2852,2853,2855,2856,2858,2859,2860,2861,2862,2864,2866,2867,2869,2871,2872,2873,2875,2876,2878,2879,2881,2882,2883,2886,2889,2891,2893,2895,2897,2898,2899,2901,2902,2904,2905,2907,2909,2910,2912,2914,2915,2917,2919,2921,2923,2924,2925,2927,2929,2930,2931,2933,2934,2936,2938,2940,2941,2943,2945,2946,2948,2950,2952,2953,2954,2956,2957,2959,2960,2962,2963,2964,2966,2967,2968,2970,2972,2974,2976,2977,2978,2979,2981,2983,2985,2986,2988,2989,2990,2991,2993,2995,2996,2997,2999,3000,3001,3003,3004,3006,3007,3009,3010,3011,3012,3014,3015,3017,3019,3020,3023,3024,3026,3028,3029,3030,3031,3032,3034,3035,3036,3037,3039,3041,3043,3045,3046,3048,3050,3051,3053,3055,3057,3059,3060,3061,3063,3064,3066,3067,3069,3072,3074,3076,3078,3080,3081,3082,3084,3086,3087,3089,3091,3092,3093,3094,3096,3097,3099,3101,3103,3105,3106,3108,3110,3112,3113,3115,3116,3117,3118,3119,3121,3123,3125,3127,3128,3130,3132,3133,3136,3137,3138,3140,3143,3145,3147,3148,3150,3152,3153,3156,3158,3159,3162,3163,3165,3167,3168,3169,3171,3172,3174,3175,3177,3179,3181,3182,3184,3187,3189,3190,3192,3193,3195,3197,3199,3201,3202,3204,3206,3207,3209,3211,3212,3213,3215,3216,3217,3218,3220,3221,3223,3224,3225,3227,3228,3229,3231,3232,3234,3235,3237,3239,3241,3243,3244,3246,3247,3249,3250,3252,3254,3256,3257,3258,3260,3261,3264,3265,3268,3269,3271,3272,3273,3275,3277,3278,3280,3281,3283,3285,3286,3287,3289,3291,3293,3294,3296,3297,3299,3301,3302,3303,3306,3308,3309,3310,3312,3314,3316,3317,3320,3322,3323,3325,3327,3329,3331,3333,3334,3335,3337,3338,3341,3343,3345,3347,3348,3349,3350,3351,3354,3355,3357,3358,3359,3361,3364,3366,3367,3368,3370,3371,3372,3374,3377,3379,3381,3383,3384,3385,3387,3389,3390,3391,3393,3395,3396,3398,3399,3400,3402,3404,3405,3407,3409,3411,3412,3413,3415,3417,3418,3421,3422,3423,3425,3427,3428,3429,3430,3432,3433,3435,3436,3438,3440,3441,3443,3446,3447,3448,3449,3452,3453,3454,3457,3458,3459,3460,3462,3463,3464,3466,3467,3469,3471,3473,3474,3475,3477,3478,3480,3482,3483,3485,3486,3488,3490,3491,3492,3494,3495,3497,3498,3500,3502,3505,3506,3508,3510,3512,3514,3515,3517,3518,3519,3521,3524,3525,3527,3528,3529,3531,3532,3534,3536,3538,3540,3542,3544,3547,3549,3551,3552,3555,3557,3558,3560,3562,3565,3567,3568,3569,3570,3574,3576,3577,3578,3580,3582,3583,3584,3585,3588,3589,3591,3592,3594,3595,3596,3598,3600,3601,3603,3605,3607,3609,3612,3613,3614,3616,3617,3619,3621,3623,3625,3628,3631,3633,3634,3635,3637,3638,3640,3642,3643,3645,3647,3651,3654,3655,3656,3658,3661,3662,3663,3665,3667,3669,3671,3673,3675,3676,3680,3681,3684,3686,3689,3692,3693,3698,3699,3704,3705,3709,3712,3714,3717,3719,3720,3722,3724,3726,3727,3731,3733,3737,3739,3742,3743,3748,3750,3753,3756,3759,3762,3763,3767,3769,3771,3772,3776,3777,3781,3787,3793,3795,3798,3801,3809,3810,3811,3814,3821,3822,3824,3825,3832,3835,3838,3841,3844,3848,3852,3854,3859,3862,3864,3872,3877,3880,3882,3886,3888,3890,3896,3898,3900,3907,3908,3914,3916,3917,3921,3923,3924,3927,3932,3935,3941,3944,3948,3952,3955,3957,3961,3965,3966,3971,3974,3977,3982,3991,3995,3998,3999,4010,4011,4012,4016,4017,4018,4026,4027,4030,4033,4037,4038,4044,4049,4051,4052,4055,4057,4060,4068,4070,4074,4075,4079,4081,4082,4089,4097,4100,4103,4107,4109,4111,4119,4120,4121,4125,4128,4135,4138,4140,4141,4146,4150,4151,4152,4154,4160,4162,4165,4169,4172,4173,4176,4181,4182,4184,4186,4192,4195,4197,4199,4209,4210,4219,4222,4223,4231,4234,4237,4240,4243,4247,4249,4253,4261,4262,4263,4270,4271,4272,4277,4278,4288,4290,4291,4296,4298,4300,4302,4305,4307,4310,4314,4317,4319,4324,4330,4336,4338,4341,4343,4345,4348,4356,4361,4363,4372,4373,4375,4383,4384,4390,4395,4398,4399,4416,4425,4428,4429,4434,4437,4438,4442,4443,4446,4447,4449,4452,4453,4454,4466,4468,4471,4473,4478,4479,4487,4489,4493,4495,4503,4506,4507,4511,4519,4522,4523,4525,4526,4528,4532,4539,4543,4546,4547,4549,4550,4552,4559,4563,4567,4571,4572,4578,4579,4581,4586,4593,4595,4599,4601,4605,4608,4610,4619,4621,4622,4628,4631,4635,4644,4650,4652,4657,4660,4663,4670,4674,4675,4678,4681,4683,4690,4691,4700,4705,4706,4708,4712,4717,4722,4725,4732,4733,4740,4742,4744,4745,4751,4761,4763,4765,4768,4771,4772,4773,4775,4778,4779,4782,4786,4789,4801,4803,4805,4807,4809,4810,4814,4815,4818,4821,4832,4836,4839,4845,4847,4850,4856,4865,4871,4876,4878,4882,4888,4889,4892,4897,4903,4907,4914,4921,4926,4928,4932,4935,4939,4941,4945,4948,4953,4956,4959,4967,4969,4972,4977,4979,4992,5000};

int b[]={3,2,7,5,12,15,9,20,11,22,33,14,17,32,35,58,40,38,24,19,26,53,31,29,52,75,60,65,70,62,42,37,68,79,28,45,50,87,47,86,55,49,92,99,44,101,57,174,118,110,113,67,64,123,116,72,129,127,126,74,77,136,199,146,145,83,166,85,246,90,82,161,160,89,164,97,95,94,309,182,177,198,103,180,156,239,190,186,108,106,203,195,340,197,232,139,218,122,120,229,125,112,215,286,228,224,81,350,133,298,138,132,253,236,143,268,259,142,241,256,149,152,135,105,266,148,281,274,264,271,322,317,278,168,289,158,327,280,315,172,301,171,163,332,154,307,185,372,141,192,391,325,313,115,306,321,305,184,339,194,565,189,346,359,208,201,188,375,210,521,207,358,214,221,205,370,362,170,379,217,456,367,390,386,179,432,226,415,252,248,234,131,464,411,245,223,213,408,250,212,501,244,220,435,702,231,454,545,489,449,255,151,496,446,445,261,558,467,176,461,590,577,532,479,276,263,478,285,494,527,293,520,283,238,509,270,505,288,639,553,470,296,485,295,243,518,474,511,487,483,588,601,531,530,319,568,312,537,303,586,557,541,529,525,580,560,719,624,570,300,549,329,574,603,600,683,556,345,343,614,338,871,651,620,334,291,772,671,596,352,661,311,666,349,610,384,761,632,395,760,691,361,357,660,400,388,399,337,726,635,364,342,673,646,324,653,649,377,788,648,374,397,776,716,664,658,393,369,273,740,423,366,421,407,405,356,893,855,413,752,735,420,723,336,825,800,434,697,382,711,443,419,348,427,1202,771,693,258,737,410,431,744,437,766,355,780,425,986,768,748,417,402,354,877,811,805,722,460,1599,828,440,404,439,866,845,810,849,469,842,448,831,822,787,453,818,430,799,785,836,473,778,492,879,381,886,899,827,499,508,504,452,503,1046,918,876,516,481,463,870,515,466,989,929,459,498,985,857,912,904,896,1107,442,869,964,920,477,564,883,551,946,937,331,948,910,957,892,555,996,935,514,969,429,976,595,543,1358,491,1010,917,924,1167,540,567,1062,523,1036,1007,572,1065,1000,585,982,944,539,1020,1013,995,1854,476,472,991,1038,576,583,1150,563,458,1017,513,634,579,1032,1085,628,619,507,1082,1061,1090,956,1029,1023,626,548,1777,1072,594,1081,1079,607,593,1118,1117,1110,1040,622,1131,617,1070,547,644,599,1098,616,1053,1122,630,1201,1165,1322,612,1241,606,1225,1120,609,1190,1106,1076,535,676,1145,1206,1180,1130,1055,605,1156,685,663,451,1384,1212,1102,657,592,637,1194,1175,695,1164,641,1192,1186,710,534,1285,680,1227,643,2018,1211,679,1208,1261,1231,706,678,1245,1214,730,656,689,1394,1269,732,1363,1243,669,1274,1307,714,700,1405,1268,1381,1219,751,699,704,1265,1314,1254,794,708,1311,1297,1420,1295,687,1390,1279,718,1337,1302,1248,3859,721,1284,1547,1348,750,1317,675,582,1451,668,763,1378,1329,757,713,1812,1372,747,1336,1461,1400,1346,743,1366,728,1361,756,1465,1432,774,1419,754,1477,797,1376,1292,796,1633,782,1389,1371,742,765,816,1527,1334,1387,655,1458,2369,1331,833,864,1695,1414,1408,791,739,1446,746,1543,1521,1413,824,803,1514,1492,853,1428,808,807,790,1687,784,1499,1457,1397,793,1468,1455,1443,830,1425,875,1464,852,682,1481,815,1606,1539,1758,1484,814,813,848,835,1510,1449,1626,1516,863,820,1575,1509,1532,1502,1537,1438,1563,1470,1403,859,2604,1674,1581,770,1541,1536,1534,868,1569,1529,1525,1592,885,839,734,1561,1612,1619,1491,882,2077,1577,862,2623,1560,1665,890,1611,851,888,881,1906,1590,1653,1636,838,562,1679,861,906,2455,902,874,915,1736,1625,943,1640,1929,1717,847,898,1617,909,1730,1678,1651,1643,1622,1580,844,927,914,1605,973,1820,1746,1721,954,2215,1799,1661,1708,908,1769,1713,950,1795,940,923,2004,1707,931,1694,1692,967,1682,1664,978,895,1882,1702,1684,1027,1866,963,960,1845,1756,1710,972,1825,1765,933,1832,1774,959,2810,952,1767,984,1811,1754,841,2388,1787,1729,994,1051,2140,1043,1002,971,1822,1785,1850,1802,1782,1006,981,2840,2288,1842,1831,1888,1762,725,1838,1012,926,1879,1009,1884,1878,1859,1035,999,2836,2036,1025,993,1824,942,1919,873,1904,1045,1034,966,1863,922,1901,1089,1978,1005,1966,1144,939,1914,1060,1877,2042,1069,1058,1847,1772,1019,962,1935,2040,1100,2981,1078,1837,1016,1975,1953,1923,1140,2051,1994,1869,1096,2209,1064,1949,1125,988,2007,1094,1088,1048,1947,1004,2011,1104,1015,2230,1092,1143,1942,2205,1922,1022,2031,1941,1109,2134,1116,2657,2026,2107,2030,1174,1075,1992,1964,1997,1087,2098,1137,1986,1970,2003,1981,1134,1124,2191,2088,1074,1129,2096,1972,1068,3303,2059,1161,1042,1159,2076,1136,1155,1153,1139,1113,1152,1067,2390,2056,980,2421,2094,2070,2129,2033,2029,2116,3159,1183,1169,1142,2067,2050,2105,1158,2001,2256,2161,1133,1178,2103,1239,1149,2338,2180,2148,2137,2100,2080,1197,1163,2168,3385,2085,598,2195,2152,2142,1247,1112,2329,2281,2203,1188,1171,2198,2176,1229,1173,2184,1238,2669,1217,1127,2194,2145,3560,1031,2302,1200,2229,1221,2224,1237,2954,2298,2276,2255,2239,1236,1199,2310,2182,2217,1258,2193,1283,1185,2640,2366,2356,2174,2293,2202,1148,2347,1235,1204,2271,1281,1290,3335,1084,2437,2237,2222,1278,1276,1057,4572,2297,2268,2261,2234,1289,2132,2287,1272,1260,1301,2246,1264,2607,2439,1224,2341,1253,2368,2322,2335,2283,1327,1233,2376,3235,2495,1216,2427,2490,2163,2362,2350,2318,1251,3156,2453,2254,2345,1320,1300,1115,2426,2317,1357,2406,1305,1316,1263,2538,1418,1310,2381,802,2557,2411,2385,1344,2449,1340,1325,2402,2358,2393,2404,1267,2910,2375,1257,3252,1343,2516,2332,2435,2420,2473,1319,998,2365,3712,2400,2398,1250,1339,1380,1304,2957,2469,2415,1354,1309,2634,2459,1430,1360,2751,2523,1352,2493,1299,1416,2485,1342,2879,759,2720,2551,2444,1370,3273,2613,1392,2513,1294,3991,1442,2505,2395,2830,2502,1410,1369,1365,2576,1287,1368,2773,1356,2525,2462,2743,2572,2709,2511,2600,2515,1396,2567,1386,1196,4079,2509,2564,2530,1407,2592,2575,1383,2708,1475,1437,2550,2549,2492,1223,4030,2700,2665,2642,1422,2597,2570,2548,1480,1472,2661,1460,1448,2789,2689,1436,2675,2647,2632,2616,2931,2761,1495,1402,2953,2691,1505,1520,2611,1434,2673,1399,2986,1508,2645,2738,1504,2687,2546,2707,1494,1441,2780,1497,2704,1571,1507,1271,3078,1453,2682,1463,2556,2729,2684,901,2938,2702,2779,2671,1487,3048,1555,1490,1479,1554,4593,1375,2832,2627,1424,1412,3121,2785,2749,2668,1566,1440,4805,2747,1546,2733,1524,3037,2759,2806,2754,1565,2902,1551,2816,2809,1531,1177,2850,1589,3254,3207,2856,1597,2798,1513,2956,2768,2746,1550,1518,1501,1588,2891,1579,1568,1489,3138,2864,2758,2883,2804,1557,4706,2788,2925,2921,2899,2834,2826,2778,1553,3334,1704,1483,1587,2882,1333,1604,3811,1630,2881,1586,3039,2869,1603,2970,2862,4055,2814,2919,1574,1741,2792,2943,1594,2873,3020,2843,1670,1616,2927,2917,1584,1657,1621,3478,2846,2985,1512,1663,1628,1601,3244,1614,2915,1673,1610,1474,3067,3036,1445,3908,2905,3024,1256,1659,2946,3261,1691,1642,3229,3015,2997,1638,1467,3064,2972,1701,2960,1690,1650,3061,3007,2974,1712,3119,3001,3148,3089,3026,1751,1648,1573,3110,3099,2979,1700,3433,2993,3046,1699,3006,1681,3338,3032,3004,1647,3589,3097,1609,1728,3031,1706,1351,3172,3333,1672,3057,1698,1646,3193,3084,1635,3460,3163,3125,3130,1655,3118,3425,3128,1761,1745,3218,3082,1724,3117,3250,3012,1608,3113,1805,3202,1726,1583,3570,1719,3396,3145,1753,1676,3763,1744,3519,3197,3101,1669,1790,3423,3217,1743,4038,1814,1668,1723,1050,3585,3289,3247,3177,1798,1732,3731,3213,3106,1776,3201,3169,1781,3314,1324,1545,3182,1792,1873,3810,1818,1817,1789,1794,1764,3359,3190,1780,3179,1830,3103,3512,1808,1549,3258,4507,1760,1738,3393,3116,3341,3225,1807,1689,1716,3327,3317,3302,1858,3269,4240,1784,3281,3232,1749,1210,3351,1835,3552,1891,3206,3413,1828,3246,1810,3299,3864,3598,3287,3500,3345,3286,1849,3498,3297,3294,1740,1927,1844,1735,4154,3495,3325,3384,1876,3941,1871,3358,3355,1909,1897,1865,1900,1804,3441,3381,3374,3350,1841,1890,3471,3368,1913,3412,3379,3534,3323,1771,3838,3693,3544,3488,3405,1989,1940,1926,1925,1857,3924,3395,3391,2013,1779,3592,3538,3241,3510,1911,3502,1903,3422,1938,1894,3699,1917,1881,3536,3467,3459,3454,3377,3684,3475,3343,3312,3722,1916,3409,3372,1937,3466,1899,3558,1147,3518,1715,3464,1974,1862,4125,1959,3628,3605,3601,3525,1182,3739,3418,2039,3578,3508,1958,1834,3667,3480,3463,1667,1934,3621,1983,1956,4089,3671,3547,3449,3367,3584,1486,3569,1944,4619,3506,1933,3772,2048,1624,2025,1977,1955,3748,3720,3658,3529,2009,2016,1988,1952,1969,4018,3614,3565,3844,3638,1932,2021,1999,3640,1991,1921,1896,3977,3619,4162,3665,3643,3549,1856,4815,3600,4479,3635,3814,2015,3852,3727,2058,3759,3689,3651,1985,3832,3676,3647,1893,3898,2092,2055,2047,1840,3917,2066,3719,3673,2111,2062,1963,4052,3698,3825,2091,3974,3709,1886,3705,4012,2128,2023,1996,3681,3890,2045,4608,2119,1951,3656,2165,3862,3714,3957,2087,3762,3733,3704,2114,2064,3769,2074,1313,3848,3787,2158,2072,3743,3854,3771,3756,2126,4075,3724,1875,2038,2125,1374,3999,3793,1350,4745,2173,3888,2187,3932,3886,2079,4550,3824,3777,2084,3955,3882,3781,3776,2155,2110,3809,3737,2151,4390,4186,2170,3907,3767,4044,1852,2147,2139,2113,3900,3880,2102,4011,3835,4782,3801,2124,3995,2069,4336,2212,3935,3822,1797,3916,3971,2200,2179,2160,2122,4197,4109,2121,2178,3927,3872,1961,4192,4135,3923,2020,3841,3798,2167,4152,2219,3948,3944,4027,1968,1645,2090,1827,4138,2236,4199,4160,3921,4082,3896,3795,2154,2233,2244,4151,3982,3966,2260,1427,3998,2189,1980,4779,4231,4121,4081,2265,4074,3965,2228,4363,4060,2249,4302,2275,2270,2242,4237,4017,3952,2328,4443,2227,4010,4037,2172,4103,2214,2253,4176,4141,3914,2285,2274,4107,4070,2208,2061,2150,4111,4051,4128,2267,2028,4249,4016,4097,3961,2295,4700,4049,2241,4330,2232,3877,2207,4278,4150,4057,3821,2006,4263,4033,2321,2301,4140,4100,2252,4447,4234,4219,4120,4223,2280,2259,2354,2417,4324,2380,4449,2258,4503,2331,4222,2431,2324,2312,2248,2044,4119,2306,4173,2316,2308,4429,4184,4195,4146,2109,4262,4210,2344,4209,2251,4026,4253,4169,1748,4243,1559,4272,2305,4182,4563,4361,2384,4543,2290,4683,4271,2374,2413,4300,2392,4395,4068,4291,2409,4296,2300,4247,2353,4348,2383,2334,4307,2465,2083,4338,4261,4172,2379,4314,4277,2361,2320,4343,4319,4992,4506,2434,4495,4446,2226,4425,2452,4373,1734,4375,4305,2561,4528,2197,2472,2373,4454,2326,1801,2082,4471,4345,2423,4610,2221,4581,4290,4547,2446,4549,4310,1861,4356,4539,4270,4165,2451,4526,4341,2484,2479,2372,4493,4473,2489,4546,2488,2475,4678,2443,1523,4453,4452,4442,4384,2587,2387,4466,2442,4288,4511,2537,2499,2441,4416,4298,2292,2131,1686,4317,2273,2433,2586,2482,4663,4635,4523,2521,2457,4744,2508,4519,2507,2408,4383,4522,4525,2654,2529,4650,4552,2595,2520,2582,2533,2519,4438,2501,1596,4399,4914,4622,2555,2429,2554,2343,4532,4468,4372,4559,4434,2544,4489,2594,4579,2532,2467,4810,4725,2626,4631,2569,2360,2314,4897,4691,4605,4478,4398,2263,4690,4601,4487,4712,2518,4571,4675,4670,4599,2652,4567,4437,2581,4803,4595,2580,2304,4945,2638,2609,2599,2579,4578,2527,4892,4856,2585,4708,2186,2637,4660,4628,4733,4621,2543,4882,4717,4674,4809,2498,4681,2487,2481,2566,4847,2664,2630,2563,2419,4836,4742,4751,2606,2352,4657,4763,2621,4876,4761,2680,4969,4722,2535,2578,2560,4789,4181,2542,2651,2718,4773,2461,4850,4832,2602,1632,4705,2696,4941,4644,2659,2340,4786,4921,4740,2629,4768,4979,4778,2656,2371,4967,2279,4928,2559,4818,4772,4586,2478,2723,2620,4839,2619,4428,4801,4889,4652,2694,4939,4871,2712,2644,4821,4765,2618,4935,4926,4807,2726,4845,2699,2706,4977,2717,4814,2742,2737,4959,4907,2791,2679,4972,4878,4771,2715,2636,4865,2650,2757,4888,2741,4956,2782,2584,4775,2736,4948,2541,2765,2574,2802,2775,2771,1816,2795,4903,2756,2678,2590,2829,4932,2732,2378,2801,2867,2625,5000,2818,2677,4732,4953,2825,2735,2800,2349,2876,2808,2823,2667,2861,2855,2860,2813,2839,2968,2941,2898,2866,2397,2144,2728,3076,2909,2853,2767,2740,2895,2540,2940,2698,2812,2731,2820,975,2794,2477,2930,3066,2889,2859,2849,2845,2784,2967,2745,2886,2875,2211,3030,2912,2753,2964,2936,2553,2929,2848,2907,2504,2950,2948,3011,2858,2797,3055,2996,2978,2914,2770,2711,2977,1868,2901,2983,2838,3017,2893,2777,3051,3010,2693,3150,2952,1931,3081,3019,2364,2878,3060,3043,2763,2157,3074,3000,3187,3035,2995,2828,1908,2991,2966,2649,3053,3087,3023,3034,2924,3041,3123,3094,2990,2615,3045,2934,2959,3086,3029,3137,3072,2976,2945,2497,2963,2714,3280,3153,3212,3127,3028,3542,3165,3133,2872,2933,3136,2923,2962,3147,3143,3093,3115,3096,2989,3092,3009,2448,3158,3195,3050,3152,3211,3140,3080,3278,3175,3162,3216,3069,3320,3265,3189,3192,3331,3181,3003,3239,3204,3272,3215,3337,3221,3105,3063,2904,3209,3285,3220,3257,3199,3275,3168,2999,3400,3234,3237,3361,3310,2871,3184,3432,3387,3329,3231,3607,3132,3404,3453,3383,3309,3014,3228,3091,3108,3308,3306,3249,3316,3399,3256,3293,3430,2725,3438,3407,3291,3227,3112,3224,2425,3322,3357,3364,3349,3366,3283,3243,3398,3277,3171,3296,3268,3271,2852,3371,3402,3167,3452,3443,1697,3469,3411,3264,3596,2035,3458,3448,3436,3429,2787,3260,2663,3486,3390,3483,3421,3348,3568,3370,3613,3521,3482,3347,3447,3492,3446,3301,3497,3174,3435,3428,3059,3562,2118,3477,3440,3491,3532,3417,3750,3485,3577,3515,3354,2842,3517,3528,3524,3625,3580,3663,3595,3551,3686,3583,2988,2897,3574,3540,3609,3457,2053,3634,3494,3415,3645,2722,3594,3623,3557,3514,3603,3637,3505,3555,3474,3669,3617,3527,3662,3490,3675,3612,3473,3427,3717,3655,3389,3576,3633,3591,3726,3631,3616,3567,3462,3692,3753,3680,3654,3588,3531,3661,3642,3582,3223,3742};
 

map < P , int > p;
void init()
{
	for(re i=0;i<2719;i++)  p[mk(a[i],b[i])]=1;
}

void solve()
{
	int n,m;
	cin>>n>>m;
	if(p[mk(n,m)])  puts("Bob");
	else  puts("Alice");
}
signed main()
{
    int T=1;
	init();      
    cin>>T;
//	ios::sync_with_stdio(false);
    for(int index=1;index<=T;index++)
    {
        solve();
//        puts("");
    }
    return 0;
}
/*



*/

B Ball Dropping

#include <bits/stdc++.h>
#define inf 0x7fffffff
#define ll long long
#define int long long
//#define double long double
//#define double long long
#define re int
//#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define mk make_pair
#define P pair < int , int >
using namespace std;
const int mod=1e9+7;
//const int inf=1e18;

void solve()
{
	double r,a,b,h;
	cin>>r>>a>>b>>h;
	if(2*r<b){
	cout<<"Drop"<<endl;
	return;
	}
	cout<<"Stuck"<<endl;
	printf("%.7lf",r*sqrt(h*h*4/(a-b)/(a-b)+1)-b*h/(a-b));
}
signed main()
{
    int T=1;       
//    cin>>T;
	ios::sync_with_stdio(false);
    for(int index=1;index<=T;index++)
    {
        solve();
//        puts("");
    }
    return 0;
}
/*



*/

D Determine the Photo Position

#include <bits/stdc++.h>
#define inf 0x7fffffff
#define ll long long
#define int long long
//#define double long double
//#define double long long
#define re int
//#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define mk make_pair
#define P pair < int , int >
using namespace std;
const int mod=1e9+7;
//const int inf=1e18;
const int M=1e8;
const int N=1e5+5;//??????.???? 4e8
int a[2005][2005],b[N],sum[N];
int n,m;
int ans;
void solve()
{
	cin>>n>>m;
	for(re i=1;i<=n;i++)  for(re j=1;j<=n;j++)  scanf("%1lld",&a[i][j]);
	for(re j=1;j<=m;j++)  scanf("%1lld",&b[j]); 
	for(re i=1;i<=n;i++)
	{
		sum[0]=0;
		for(re j=1;j<=n;j++)  sum[j]=sum[j-1]+a[i][j];
//		for(re j=1;j<=n;j++)  cout<<sum[j]<<" ";
//		cout<<endl;
		for(re j=1;j+m-1<=n;j++)  if(!a[i][j]&&!a[i][j+m-1]&&sum[j]==sum[j+m-1])  ans++;
	} 
	cout<<ans<<endl;
}
signed main()
{
    int T=1;       
//    cin>>T;
    for(int index=1;index<=T;index++)
    {
        solve();
//        puts("");
    }
    return 0;
}
/*



*/

F Find 3-friendly Integers

#include <bits/stdc++.h>
#define inf 0x7fffffff
#define ll long long
#define int long long
//#define double long double
//#define double long long
#define re int
//#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define mk make_pair
#define P pair < int , int >
using namespace std;
const int mod=1e9+7;
//const int inf=1e18;
const int M=1e8;
const int N=5e6+5;//??????.???? 4e8
int a[N],n,sum[N];
int b[N],s[N];
int divide(int x)
{
	n=0;
	while(x)
	{
		a[++n]=x%10;
		x/=10;
	}
	for(re i=1;i<=n;i++)  sum[i]=sum[i-1]+a[i];
	for(re i=1;i<=n;i++)  for(re j=i;j<=n;j++) if((sum[j]-sum[i-1])%3==0)  return 1;
	return 0;
}
void init()
{
	for(re i=1;i<=2e5;i++)  b[i]=divide(i),s[i]=s[i-1]+b[i];
//	cout<<s[205]-s[95]<<endl;
}
void solve()
{
	int l,r;
	cin>>l>>r;
	if(l>2e2&&r>2e2)  cout<<r-l+1<<endl;
	else  if(l<=2e2&&r>2e2)  cout<<r-200+s[200]-s[l-1]<<endl;
	else  cout<<s[r]-s[l-1]<<endl;
}
signed main()
{
	init();
    int T=1;       
    cin>>T;
    for(int index=1;index<=T;index++)
    {
        solve();
//        puts("");
    }
    return 0;
}
/*



*/

G Game of Swapping Numbers

#include <bits/stdc++.h>
#define inf 0x7fffffff
#define ll long long
#define int long long
//#define double long double
//#define double long long
#define re int
//#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define mk make_pair
#define P pair < int , int >
using namespace std;
const int mod=1e9+7;
//const int inf=1e18;
const int M=1e8;
const int N=5e6+5;//??????.???? 4e8
int n,k;
int a[N],b[N];
int d[N],c[N];
int ans;
void solve()
{
	cin>>n>>k;
	for(re i=1;i<=n;i++)  scanf("%lld",&a[i]);
	for(re i=1;i<=n;i++)  scanf("%lld",&b[i]);
	if(n==2)
	{
		if(k&1)  swap(a[1],a[2]);
		for(re i=1;i<=n;i++)  ans+=abs(a[i]-b[i]); 
	}
	else
	{
		for(re i=1;i<=n;i++)  d[i]=-2*max(a[i],b[i]),c[i]=2*min(a[i],b[i]),ans+=abs(a[i]-b[i]);
		sort(d+1,d+n+1);sort(c+1,c+n+1);//d绝对值递减 
		for(re i=n;i>=max(n-k+1,(int)1)&&c[i]+d[i]>0;i--)  ans+=(d[i]+c[i]);
	}
	cout<<ans<<endl;
}
signed main()
{
    int T=1;       
//    cin>>T;
    for(int index=1;index<=T;index++)
    {
        solve();
//        puts("");
    }
    return 0;
}
/*



*/

K Knowledge Test about Match

#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
#include <bits/stdc++.h>
#define inf 0x7fffffff
//#define ll long long
#define int long long
//#define double long double
#define re int
#define void inline void
#define eps 1e-8
//#define mod 1e9+7
#define ls(p) p<<1
#define rs(p) p<<1|1
#define pi acos(-1.0)
#define pb push_back
#define P pair < int , int > 
#define mk make_pair
using namespace std;
const int mod=1e9+7;
const int M=1e8+5;
const int N=5e5+5;//?????????? 4e8
int a[N];
double b[N];
int n;
void init()
{
	for(re i=1;i<N;i++)  b[i]=sqrt(i*1.0); 
}
void solve()
{
	cin>>n;
	for(re i=0;i<n;i++)  scanf("%lld",&a[i]);
	for(re k=1;k<=5;k++)  for(re i=0;i<n;i++)  for(re j=i+1;j<n;j++)  if(b[abs(i-a[i])]+b[abs(j-a[j])]>b[abs(j-a[i])]+b[abs(i-a[j])])  swap(a[i],a[j]);
	for(re i=0;i<n;i++)  printf("%lld ",a[i]);puts("");
}
signed main()
{
	init();
    int T=1;
    cin>>T;
    for(int index=1;index<=T;index++)
    {
        solve();
//        puts("");
    }
    return 0;
}
/*
 
4 5
1 2
1 3
1 4
2 3
3 4
 
*/ 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值