C++农历与公历转换(1)

 前言

        最近需要做公历和农历的C++转换库,就在网站上找了一些文章来参考,但这些文章,都有一些不足(比如只能用于MFC,数据范围过小等等。。。。。。),于是决定自己开发一个。

数据存储

我打算包含1900-2100共200年的数据

经过个人研究,决定使用以下方式:

首先,日期用儒略日存,这样日期加减就比较简单

存储1900-2100年每年农历月首的JDN:

// 范围: 农历1900年正月初一~农历2100年除夕
const int FIRST_DAY=2415051, LAST_DAY=2415051+73383, OFFSET=73383;
// 每一项都减去了FIRST_DAY
static const int lunar_month_first_day[][13]={
    {0, 29, 59, 88, 117, 147, 176, 206, 236, 265, 295, 325, 354},    // 1900
    {384, 413, 443, 472, 501, 531, 560, 590, 619, 649, 679, 709},    // 1901
    {738, 768, 797, 827, 856, 885, 915, 944, 974, 1003, 1033, 1063},    // 1902
    {1093, 1122, 1152, 1181, 1211, 1240, 1269, 1299, 1328, 1357, 1387, 1417, 1446},    // 1903
    {1476, 1506, 1536, 1565, 1595, 1624, 1653, 1683, 1712, 1741, 1771, 1801},    // 1904
    {1830, 1860, 1890, 1919, 1949, 1979, 2008, 2037, 2067, 2096, 2126, 2155},    // 1905
    {2185, 2214, 2244, 2274, 2303, 2333, 2362, 2392, 2421, 2451, 2480, 2510, 2539},    // 1906
    {2569, 2598, 2628, 2657, 2687, 2716, 2746, 2776, 2805, 2835, 2864, 2894},    // 1907
    {2923, 2953, 2982, 3011, 3041, 3071, 3100, 3130, 3159, 3189, 3219, 3248},    // 1908
    {3278, 3307, 3337, 3366, 3395, 3425, 3454, 3484, 3513, 3543, 3573, 3603, 3632},    // 1909
    {3662, 3691, 3721, 3750, 3779, 3809, 3838, 3868, 3897, 3927, 3957, 3987},    // 1910
    {4016, 4046, 4075, 4105, 4134, 4163, 4193, 4222, 4251, 4281, 4311, 4340, 4370},    // 1911
    {4400, 4430, 4459, 4489, 4518, 4547, 4577, 4606, 4635, 4665, 4695, 4724},    // 1912
    {4754, 4784, 4814, 4843, 4873, 4902, 4931, 4961, 4990, 5019, 5049, 5078},    // 1913
    {5108, 5138, 5168, 5197, 5227, 5256, 5286, 5315, 5345, 5374, 5403, 5433, 5462},    // 1914
    {5492, 5522, 5551, 5581, 5611, 5640, 5670, 5699, 5729, 5758, 5788, 5817},    // 1915
    {5846, 5876, 5906, 5935, 5965, 5994, 6024, 6054, 6083, 6113, 6142, 6172},    // 1916
    {6201, 6231, 6260, 6289, 6319, 6348, 6378, 6408, 6437, 6467, 6497, 6526, 6556},    // 1917
    {6585, 6615, 6644, 6673, 6703, 6732, 6762, 6791, 6821, 6851, 6880, 6910},    // 1918
    {6940, 6969, 6999, 7028, 7057, 7087, 7116, 7145, 7175, 7205, 7234, 7264, 7294},    // 1919
    {7324, 7353, 7383, 7412, 7441, 7471, 7500, 7529, 7559, 7588, 7618, 7648},    // 1920
    {7678, 7708, 7737, 7767, 7796, 7825, 7855, 7884, 7913, 7943, 7972, 8002},    // 1921
    {8032, 8062, 8091, 8121, 8151, 8180, 8209, 8239, 8268, 8297, 8327, 8356, 8386},    // 1922
    {8416, 8445, 8475, 8505, 8534, 8564, 8593, 8623, 8652, 8681, 8711, 8740},    // 1923
    {8770, 8799, 8829, 8859, 8888, 8918, 8948, 8977, 9007, 9036, 9066, 9095},    // 1924
    {9124, 9154, 9183, 9213, 9242, 9272, 9302, 9331, 9361, 9391, 9420, 9450, 9479},    // 1925
    {9509, 9538, 9567, 9597, 9626, 9656, 9685, 9715, 9745, 9774, 9804, 9834},    // 1926
    {9863, 9893, 9922, 9951, 9981, 10010, 10040, 10069, 10099, 10128, 10158, 10188},    // 1927
    {10218, 10247, 10277, 10306, 10335, 10365, 10394, 10423, 10453, 10482, 10512, 10542, 10572},    // 1928
    {10602, 10631, 10661, 10690, 10719, 10749, 10778, 10807, 10837, 10866, 10896, 10926},    // 1929
    {10956, 10985, 11015, 11045, 11074, 11103, 11133, 11162, 11191, 11221, 11250, 11280, 11310},    // 1930
    {11339, 11369, 11399, 11428, 11458, 11487, 11517, 11546, 11575, 11605, 11634, 11664},    // 1931
    {11693, 11723, 11753, 11783, 11812, 11842, 11871, 11901, 11930, 11959, 11989, 12018},    // 1932
    {12048, 12077, 12107, 12137, 12166, 12196, 12226, 12255, 12285, 12314, 12344, 12373, 12402},    // 1933
    {12432, 12461, 12491, 12520, 12550, 12580, 12609, 12639, 12668, 12698, 12728, 12757},    // 1934
    {12787, 12816, 12845, 12875, 12904, 12934, 12963, 12993, 13023, 13052, 13082, 13112},    // 1935
    {13141, 13171, 13200, 13229, 13259, 13288, 13317, 13347, 13377, 13406, 13436, 13466, 13496},    // 1936
    {13525, 13555, 13584, 13613, 13643, 13672, 13701, 13731, 13760, 13790, 13820, 13850},    // 1937
    {13879, 13909, 13939, 13968, 13997, 14027, 14056, 14085, 14115, 14144, 14174, 14204, 14233},    // 1938
    {14263, 14293, 14323, 14352, 14381, 14411, 14440, 14469, 14499, 14528, 14558, 14587},    // 1939
    {14617, 14647, 14677, 14706, 14736, 14765, 14795, 14824, 14853, 14883, 14912, 14942},    // 1940
    {14971, 15001, 15031, 15060, 15090, 15120, 15149, 15179, 15208, 15237, 15267, 15296, 15326},    // 1941
    {15355, 15385, 15414, 15444, 15474, 15503, 15533, 15562, 15592, 15621, 15651, 15680},    // 1942
    {15710, 15739, 15769, 15798, 15828, 15857, 15887, 15917, 15946, 15976, 16005, 16035},    // 1943
    {16064, 16094, 16123, 16153, 16182, 16212, 16241, 16271, 16300, 16330, 16360, 16389, 16419},    // 1944
    {16449, 16478, 16507, 16537, 16566, 16595, 16625, 16654, 16684, 16714, 16744, 16773},    // 1945
    {16803, 16833, 16862, 16891, 16921, 16950, 16979, 17009, 17038, 17068, 17098, 17127},    // 1946
    {17157, 17187, 17217, 17246, 17275, 17305, 17334, 17363, 17393, 17422, 17452, 17481, 17511},    // 1947
    {17541, 17571, 17600, 17630, 17659, 17689, 17718, 17747, 17777, 17806, 17836, 17865},    // 1948
    {17895, 17925, 17954, 17984, 18014, 18043, 18073, 18102, 18131, 18161, 18190, 18220, 18249},    // 1949
    {18279, 18308, 18338, 18368, 18397, 18427, 18457, 18486, 18515, 18545, 18574, 18604},    // 1950
    {18633, 18663, 18692, 18722, 18752, 18781, 18811, 18840, 18870, 18899, 18929, 18958},    // 1951
    {18988, 19017, 19047, 19076, 19106, 19135, 19165, 19194, 19224, 19254, 19283, 19313, 19342},    // 1952
    {19372, 19401, 19431, 19460, 19489, 19519, 19549, 19578, 19608, 19638, 19667, 19697},    // 1953
    {19726, 19756, 19785, 19815, 19844, 19873, 19903, 19932, 19962, 19992, 20021, 20051},    // 1954
    {20081, 20110, 20140, 20169, 20199, 20228, 20257, 20287, 20316, 20346, 20375, 20405, 20435},    // 1955
    {20465, 20494, 20524, 20553, 20583, 20612, 20641, 20671, 20700, 20730, 20759, 20789},    // 1956
    {20819, 20849, 20878, 20908, 20937, 20967, 20996, 21025, 21055, 21084, 21114, 21143, 21173},    // 1957
    {21202, 21232, 21262, 21292, 21321, 21351, 21380, 21409, 21439, 21468, 21498, 21527},    // 1958
    {21557, 21586, 21616, 21646, 21675, 21705, 21734, 21764, 21793, 21823, 21852, 21882},    // 1959
    {21911, 21941, 21970, 22000, 22029, 22059, 22089, 22118, 22148, 22177, 22207, 22236, 22266},    // 1960
    {22295, 22325, 22354, 22384, 22413, 22443, 22472, 22502, 22532, 22561, 22591, 22620},    // 1961
    {22650, 22679, 22709, 22738, 22767, 22797, 22826, 22856, 22886, 22915, 22945, 22975},    // 1962
    {23004, 23034, 23063, 23093, 23122, 23151, 23181, 23210, 23240, 23269, 23299, 23329, 23359},    // 1963
    {23388, 23418, 23447, 23477, 23506, 23535, 23565, 23594, 23624, 23653, 23683, 23713},    // 1964
    {23743, 23772, 23802, 23831, 23861, 23890, 23919, 23949, 23978, 24007, 24037, 24067},    // 1965
    {24096, 24126, 24156, 24186, 24215, 24245, 24274, 24303, 24333, 24362, 24391, 24421, 24451},    // 1966
    {24480, 24510, 24540, 24569, 24599, 24629, 24658, 24687, 24717, 24746, 24776, 24805},    // 1967
    {24835, 24864, 24894, 24923, 24953, 24983, 25012, 25042, 25071, 25101, 25130, 25160, 25189},    // 1968
    {25219, 25248, 25278, 25307, 25337, 25366, 25396, 25426, 25455, 25485, 25514, 25544},    // 1969
    {25573, 25603, 25632, 25661, 25691, 25720, 25750, 25780, 25809, 25839, 25869, 25898},    // 1970
    {25928, 25957, 25987, 26016, 26045, 26075, 26104, 26134, 26163, 26193, 26223, 26253, 26282},    // 1971
    {26312, 26341, 26371, 26400, 26429, 26459, 26488, 26518, 26547, 26577, 26607, 26636},    // 1972
    {26666, 26696, 26725, 26755, 26784, 26813, 26843, 26872, 26901, 26931, 26961, 26990},    // 1973
    {27020, 27050, 27080, 27109, 27139, 27168, 27197, 27227, 27256, 27285, 27315, 27345, 27374},    // 1974
    {27404, 27434, 27464, 27493, 27523, 27552, 27581, 27611, 27640, 27669, 27699, 27728},    // 1975
    {27758, 27788, 27818, 27847, 27877, 27906, 27936, 27965, 27995, 28024, 28053, 28083, 28112},    // 1976
    {28142, 28172, 28201, 28231, 28261, 28290, 28320, 28349, 28379, 28408, 28438, 28467},    // 1977
    {28496, 28526, 28555, 28585, 28615, 28644, 28674, 28704, 28733, 28763, 28792, 28822},    // 1978
    {28851, 28881, 28910, 28939, 28969, 28998, 29028, 29058, 29087, 29117, 29147, 29176, 29206},    // 1979
    {29235, 29265, 29294, 29323, 29353, 29382, 29412, 29441, 29471, 29501, 29530, 29560},    // 1980
    {29590, 29619, 29649, 29678, 29707, 29737, 29766, 29795, 29825, 29855, 29884, 29914},    // 1981
    {29944, 29974, 30003, 30033, 30062, 30091, 30121, 30150, 30179, 30209, 30238, 30268, 30298},    // 1982
    {30328, 30358, 30387, 30417, 30446, 30475, 30505, 30534, 30563, 30593, 30622, 30652},    // 1983
    {30682, 30712, 30741, 30771, 30801, 30830, 30859, 30889, 30918, 30947, 30977, 31006, 31036},    // 1984
    {31066, 31095, 31125, 31155, 31184, 31214, 31243, 31273, 31302, 31331, 31361, 31390},    // 1985
    {31420, 31449, 31479, 31509, 31538, 31568, 31598, 31627, 31657, 31686, 31716, 31745},    // 1986
    {31774, 31804, 31833, 31863, 31892, 31922, 31952, 31981, 32011, 32041, 32070, 32100, 32129},    // 1987
    {32158, 32188, 32217, 32247, 32276, 32306, 32335, 32365, 32395, 32424, 32454, 32484},    // 1988
    {32513, 32543, 32572, 32601, 32631, 32660, 32690, 32719, 32749, 32778, 32808, 32838},    // 1989
    {32868, 32897, 32927, 32956, 32985, 33015, 33044, 33073, 33103, 33132, 33162, 33192, 33222},    // 1990
    {33252, 33281, 33311, 33340, 33369, 33399, 33428, 33457, 33487, 33516, 33546, 33576},    // 1991
    {33606, 33635, 33665, 33695, 33724, 33753, 33783, 33812, 33841, 33871, 33900, 33930},    // 1992
    {33960, 33989, 34019, 34049, 34078, 34108, 34137, 34167, 34196, 34225, 34255, 34284, 34314},    // 1993
    {34343, 34373, 34403, 34433, 34462, 34492, 34521, 34551, 34580, 34609, 34639, 34668},    // 1994
    {34698, 34727, 34757, 34787, 34816, 34846, 34875, 34905, 34935, 34964, 34993, 35023, 35052},    // 1995
    {35082, 35111, 35141, 35170, 35200, 35230, 35259, 35289, 35318, 35348, 35378, 35407},    // 1996
    {35436, 35466, 35495, 35525, 35554, 35584, 35613, 35643, 35673, 35702, 35732, 35762},    // 1997
    {35791, 35821, 35850, 35879, 35909, 35938, 35967, 35997, 36027, 36056, 36086, 36116, 36145},    // 1998
    {36175, 36205, 36234, 36263, 36293, 36322, 36351, 36381, 36410, 36440, 36470, 36500},    // 1999
    {36529, 36559, 36589, 36618, 36647, 36677, 36706, 36735, 36765, 36794, 36824, 36854},    // 2000
    {36883, 36913, 36943, 36972, 37002, 37031, 37061, 37090, 37119, 37149, 37178, 37208, 37237},    // 2001
    {37267, 37297, 37327, 37356, 37386, 37415, 37445, 37474, 37503, 37533, 37562, 37592},    // 2002
    {37621, 37651, 37681, 37710, 37740, 37770, 37799, 37829, 37858, 37887, 37917, 37946},    // 2003
    {37976, 38005, 38035, 38064, 38094, 38124, 38153, 38183, 38212, 38242, 38271, 38301, 38330},    // 2004
    {38360, 38389, 38419, 38448, 38478, 38507, 38537, 38567, 38596, 38626, 38655, 38685},    // 2005
    {38714, 38744, 38773, 38803, 38832, 38862, 38891, 38921, 38950, 38980, 39010, 39039, 39069},    // 2006
    {39099, 39128, 39157, 39187, 39216, 39245, 39275, 39304, 39334, 39364, 39394, 39423},    // 2007
    {39453, 39483, 39512, 39541, 39571, 39600, 39629, 39659, 39688, 39718, 39748, 39777},    // 2008
    {39807, 39837, 39867, 39896, 39925, 39955, 39984, 40013, 40043, 40072, 40102, 40131, 40161},    // 2009
    {40191, 40221, 40250, 40280, 40309, 40339, 40368, 40397, 40427, 40456, 40486, 40515},    // 2010
    {40545, 40575, 40604, 40634, 40664, 40693, 40723, 40752, 40781, 40811, 40840, 40870},    // 2011
    {40899, 40929, 40958, 40988, 41018, 41047, 41077, 41106, 41136, 41165, 41195, 41224, 41254},    // 2012
    {41283, 41313, 41342, 41372, 41401, 41431, 41461, 41490, 41520, 41549, 41579, 41608},    // 2013
    {41638, 41667, 41697, 41726, 41756, 41785, 41815, 41844, 41874, 41904, 41933, 41963, 41992},    // 2014
    {42022, 42051, 42081, 42110, 42139, 42169, 42198, 42228, 42258, 42288, 42317, 42347},    // 2015
    {42376, 42406, 42435, 42465, 42494, 42523, 42553, 42582, 42612, 42642, 42671, 42701},    // 2016
    {42731, 42760, 42790, 42819, 42849, 42878, 42907, 42937, 42966, 42996, 43025, 43055, 43085},    // 2017
    {43115, 43144, 43174, 43203, 43233, 43262, 43291, 43321, 43350, 43380, 43409, 43439},    // 2018
    {43469, 43499, 43528, 43558, 43587, 43617, 43646, 43675, 43705, 43734, 43763, 43793},    // 2019
    {43823, 43852, 43882, 43912, 43942, 43971, 44001, 44030, 44059, 44089, 44118, 44148, 44177},    // 2020
    {44207, 44236, 44266, 44296, 44325, 44355, 44384, 44414, 44443, 44473, 44502, 44532},    // 2021
    {44561, 44591, 44620, 44650, 44679, 44709, 44739, 44768, 44798, 44827, 44857, 44886},    // 2022
    {44916, 44945, 44975, 45004, 45033, 45063, 45093, 45122, 45152, 45182, 45211, 45241, 45270},    // 2023
    {45300, 45329, 45359, 45388, 45417, 45447, 45476, 45506, 45536, 45565, 45595, 45625},    // 2024
    {45654, 45684, 45713, 45743, 45772, 45801, 45831, 45860, 45890, 45919, 45949, 45979, 46009},    // 2025
    {46038, 46068, 46097, 46127, 46156, 46185, 46215, 46244, 46273, 46303, 46333, 46363},    // 2026
    {46392, 46422, 46452, 46481, 46511, 46540, 46569, 46599, 46628, 46657, 46687, 46717},    // 2027
    {46746, 46776, 46806, 46836, 46865, 46895, 46924, 46953, 46983, 47012, 47041, 47071, 47101},    // 2028
    {47130, 47160, 47190, 47219, 47249, 47278, 47308, 47337, 47367, 47396, 47425, 47455},    // 2029
    {47485, 47514, 47544, 47573, 47603, 47633, 47662, 47692, 47721, 47751, 47780, 47810},    // 2030
    {47839, 47868, 47898, 47928, 47957, 47987, 48016, 48046, 48076, 48105, 48135, 48164, 48194},    // 2031
    {48223, 48253, 48282, 48311, 48341, 48370, 48400, 48430, 48459, 48489, 48519, 48548},    // 2032
    {48578, 48607, 48637, 48666, 48695, 48725, 48754, 48784, 48813, 48843, 48873, 48903, 48932},    // 2033
    {48962, 48991, 49021, 49050, 49079, 49109, 49138, 49168, 49197, 49227, 49257, 49286},    // 2034
    {49316, 49346, 49375, 49405, 49434, 49463, 49493, 49522, 49551, 49581, 49611, 49640},    // 2035
    {49670, 49700, 49730, 49759, 49789, 49818, 49847, 49877, 49906, 49935, 49965, 49994, 50024},    // 2036
    {50054, 50084, 50114, 50143, 50173, 50202, 50231, 50261, 50290, 50319, 50349, 50378},    // 2037
    {50408, 50438, 50468, 50497, 50527, 50556, 50586, 50615, 50645, 50674, 50703, 50733},    // 2038
    {50762, 50792, 50822, 50851, 50881, 50911, 50940, 50970, 50999, 51029, 51058, 51088, 51117},    // 2039
    {51146, 51176, 51205, 51235, 51265, 51294, 51324, 51353, 51383, 51413, 51442, 51472},    // 2040
    {51501, 51530, 51560, 51589, 51619, 51648, 51678, 51708, 51737, 51767, 51797, 51826},    // 2041
    {51856, 51885, 51915, 51944, 51973, 52003, 52032, 52062, 52091, 52121, 52151, 52180, 52210},    // 2042
    {52240, 52269, 52299, 52328, 52357, 52387, 52416, 52445, 52475, 52505, 52534, 52564},    // 2043
    {52594, 52624, 52653, 52683, 52712, 52741, 52771, 52800, 52829, 52859, 52888, 52918, 52948},    // 2044
    {52978, 53008, 53037, 53067, 53096, 53125, 53155, 53184, 53213, 53243, 53272, 53302},    // 2045
    {53332, 53362, 53391, 53421, 53450, 53480, 53509, 53539, 53568, 53597, 53627, 53656},    // 2046
    {53686, 53716, 53745, 53775, 53805, 53834, 53864, 53893, 53923, 53952, 53981, 54011, 54040},    // 2047
    {54070, 54099, 54129, 54159, 54188, 54218, 54248, 54277, 54307, 54336, 54365, 54395},    // 2048
    {54424, 54454, 54483, 54513, 54542, 54572, 54602, 54631, 54661, 54691, 54720, 54750},    // 2049
    {54779, 54808, 54838, 54867, 54897, 54926, 54956, 54985, 55015, 55045, 55074, 55104, 55134},    // 2050
    {55163, 55193, 55222, 55251, 55281, 55310, 55339, 55369, 55399, 55428, 55458, 55488},    // 2051
    {55518, 55547, 55577, 55606, 55635, 55665, 55694, 55723, 55753, 55782, 55812, 55842, 55872},    // 2052
    {55902, 55931, 55961, 55990, 56019, 56049, 56078, 56107, 56137, 56166, 56196, 56226},    // 2053
    {56256, 56285, 56315, 56345, 56374, 56403, 56433, 56462, 56491, 56521, 56550, 56580},    // 2054
    {56610, 56639, 56669, 56699, 56728, 56758, 56787, 56817, 56846, 56875, 56905, 56934, 56964},    // 2055
    {56993, 57023, 57053, 57083, 57112, 57142, 57171, 57201, 57230, 57259, 57289, 57318},    // 2056
    {57348, 57377, 57407, 57437, 57466, 57496, 57525, 57555, 57585, 57614, 57643, 57673},    // 2057
    {57702, 57732, 57761, 57791, 57820, 57850, 57879, 57909, 57939, 57968, 57998, 58028, 58057},    // 2058
    {58086, 58116, 58145, 58175, 58204, 58234, 58263, 58293, 58322, 58352, 58382, 58412},    // 2059
    {58441, 58471, 58500, 58529, 58559, 58588, 58617, 58647, 58676, 58706, 58736, 58766},    // 2060
    {58795, 58825, 58855, 58884, 58913, 58943, 58972, 59001, 59031, 59060, 59090, 59120, 59150},    // 2061
    {59179, 59209, 59239, 59268, 59297, 59327, 59356, 59385, 59415, 59444, 59474, 59504},    // 2062
    {59533, 59563, 59593, 59622, 59652, 59681, 59711, 59740, 59769, 59799, 59828, 59858, 59887},    // 2063
    {59917, 59947, 59977, 60006, 60036, 60065, 60095, 60124, 60153, 60183, 60212, 60242},    // 2064
    {60271, 60301, 60331, 60360, 60390, 60420, 60449, 60479, 60508, 60537, 60567, 60596},    // 2065
    {60626, 60655, 60685, 60714, 60744, 60774, 60803, 60833, 60862, 60892, 60921, 60951, 60980},    // 2066
    {61010, 61039, 61069, 61098, 61128, 61157, 61187, 61217, 61246, 61276, 61305, 61335},    // 2067
    {61364, 61394, 61423, 61453, 61482, 61511, 61541, 61571, 61600, 61630, 61660, 61689},    // 2068
    {61719, 61748, 61778, 61807, 61837, 61866, 61895, 61925, 61954, 61984, 62014, 62044, 62073},    // 2069
    {62103, 62132, 62162, 62191, 62221, 62250, 62279, 62309, 62338, 62368, 62398, 62427},    // 2070
    {62457, 62487, 62516, 62546, 62575, 62605, 62634, 62663, 62693, 62722, 62752, 62781, 62811},    // 2071
    {62841, 62871, 62900, 62930, 62959, 62989, 63018, 63047, 63077, 63106, 63136, 63165},    // 2072
    {63195, 63225, 63254, 63284, 63314, 63343, 63373, 63402, 63431, 63461, 63490, 63520},    // 2073
    {63549, 63579, 63608, 63638, 63668, 63697, 63727, 63756, 63786, 63815, 63845, 63874, 63904},    // 2074
    {63933, 63963, 63992, 64022, 64051, 64081, 64111, 64140, 64170, 64199, 64229, 64258},    // 2075
    {64288, 64317, 64347, 64376, 64406, 64435, 64465, 64494, 64524, 64554, 64583, 64613},    // 2076
    {64642, 64672, 64701, 64731, 64760, 64789, 64819, 64848, 64878, 64908, 64938, 64967, 64997},    // 2077
    {65026, 65056, 65085, 65115, 65144, 65173, 65203, 65232, 65262, 65292, 65321, 65351},    // 2078
    {65381, 65410, 65440, 65469, 65499, 65528, 65557, 65587, 65616, 65646, 65675, 65705},    // 2079
    {65735, 65765, 65794, 65824, 65853, 65883, 65912, 65941, 65971, 66000, 66029, 66059, 66089},    // 2080
    {66119, 66148, 66178, 66208, 66237, 66267, 66296, 66325, 66355, 66384, 66413, 66443},    // 2081
    {66473, 66502, 66532, 66562, 66592, 66621, 66650, 66680, 66709, 66739, 66768, 66797, 66827},    // 2082
    {66857, 66886, 66916, 66946, 66975, 67005, 67034, 67064, 67093, 67123, 67152, 67182},    // 2083
    {67211, 67241, 67270, 67300, 67329, 67359, 67389, 67418, 67448, 67477, 67507, 67536},    // 2084
    {67566, 67595, 67625, 67654, 67683, 67713, 67743, 67772, 67802, 67832, 67861, 67891, 67920},    // 2085
    {67950, 67979, 68009, 68038, 68067, 68097, 68126, 68156, 68186, 68215, 68245, 68275},    // 2086
    {68304, 68334, 68363, 68393, 68422, 68451, 68481, 68510, 68540, 68569, 68599, 68629},    // 2087
    {68659, 68688, 68718, 68747, 68777, 68806, 68835, 68865, 68894, 68923, 68953, 68983, 69013},    // 2088
    {69042, 69072, 69102, 69131, 69161, 69190, 69219, 69249, 69278, 69307, 69337, 69367},    // 2089
    {69396, 69426, 69456, 69486, 69515, 69545, 69574, 69603, 69633, 69662, 69691, 69721, 69751},    // 2090
    {69780, 69810, 69840, 69869, 69899, 69928, 69958, 69987, 70017, 70046, 70075, 70105},    // 2091
    {70134, 70164, 70194, 70223, 70253, 70283, 70312, 70342, 70371, 70401, 70430, 70460},    // 2092
    {70489, 70518, 70548, 70578, 70607, 70637, 70666, 70696, 70726, 70755, 70785, 70814, 70844},    // 2093
    {70873, 70902, 70932, 70961, 70991, 71020, 71050, 71080, 71109, 71139, 71169, 71198},    // 2094
    {71228, 71257, 71287, 71316, 71345, 71375, 71404, 71434, 71463, 71493, 71523, 71553},    // 2095
    {71582, 71612, 71641, 71671, 71700, 71729, 71759, 71788, 71817, 71847, 71877, 71907, 71936},    // 2096
    {71966, 71996, 72025, 72055, 72084, 72113, 72143, 72172, 72201, 72231, 72261, 72290},    // 2097
    {72320, 72350, 72380, 72409, 72439, 72468, 72497, 72526, 72556, 72585, 72615, 72644},    // 2098
    {72674, 72704, 72734, 72763, 72793, 72823, 72852, 72881, 72911, 72940, 72969, 72999, 73028},    // 2099
    {73058, 73088, 73118, 73147, 73177, 73206, 73236, 73265, 73295, 73324, 73353, 73383}   // 2100
};

然后需要存每个农历月的天数和闰月信息,虽然根据上面能直接算出,但是大量计算需要时间

这里,每个月的天数用0和1就能表示,使用时加上29就行:

static int month_days[][12]={
    {0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1},    // 1900
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0},    // 1901
    {1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1},    // 1902
    {0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1},    // 1903
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0},    // 1904
    {1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1},    // 1905
    {0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1},    // 1906
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 1907
    {1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1},    // 1908
    {0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1},    // 1909
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0},    // 1910
    {1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1},    // 1911
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1},    // 1912
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1},    // 1913
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1},    // 1914
    {1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0},    // 1915
    {1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 1916
    {1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0},    // 1917
    {1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1},    // 1918
    {0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1},    // 1919
    {0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1},    // 1920
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1},    // 1921
    {1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1},    // 1922
    {0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1},    // 1923
    {0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0},    // 1924
    {1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1},    // 1925
    {0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 1926
    {1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1},    // 1927
    {0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1},    // 1928
    {0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1},    // 1929
    {0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0},    // 1930
    {1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 1931
    {1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1},    // 1932
    {0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1},    // 1933
    {0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1},    // 1934
    {0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 1935
    {1, 0, 0, 0, 0, 1, 1, 0, 1, 1, 1, 0},    // 1936
    {1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0},    // 1937
    {1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1},    // 1938
    {1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 0, 1},    // 1939
    {1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 1940
    {1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 1, 0},    // 1941
    {1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1},    // 1942
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 1943
    {1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1},    // 1944
    {0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1},    // 1945
    {1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1},    // 1946
    {1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1},    // 1947
    {1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1},    // 1948
    {1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1},    // 1949
    {0, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0},    // 1950
    {1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1},    // 1951
    {0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1},    // 1952
    {0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0},    // 1953
    {1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1},    // 1954
    {0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 1},    // 1955
    {0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1},    // 1956
    {1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 0},    // 1957
    {1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1},    // 1958
    {0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},    // 1959
    {1, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0},    // 1960
    {1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1},    // 1961
    {0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 1962
    {1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0},    // 1963
    {1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1},    // 1964
    {0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0},    // 1965
    {1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 1, 0},    // 1966
    {1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1},    // 1967
    {0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},    // 1968
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 1969
    {1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1},    // 1970
    {0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0, 1},    // 1971
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1},    // 1972
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1},    // 1973
    {1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1},    // 1974
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1},    // 1975
    {1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1},    // 1976
    {1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 0},    // 1977
    {1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 1978
    {1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0},    // 1979
    {1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1},    // 1980
    {0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1},    // 1981
    {1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1},    // 1982
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1},    // 1983
    {1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1},    // 1984
    {0, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1},    // 1985
    {0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 0},    // 1986
    {1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0},    // 1987
    {1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 1988
    {1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1},    // 1989
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1},    // 1990
    {0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1},    // 1991
    {0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1},    // 1992
    {0, 1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 1993
    {1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1},    // 1994
    {0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1},    // 1995
    {0, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0},    // 1996
    {1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 1997
    {1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1},    // 1998
    {1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0},    // 1999
    {1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0},    // 2000
    {1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1},    // 2001
    {1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 2002
    {1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1},    // 2003
    {0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1},    // 2004
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 2005
    {1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 1},    // 2006
    {0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1},    // 2007
    {1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1},    // 2008
    {1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 1, 1},    // 2009
    {1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1},    // 2010
    {1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 2011
    {1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 0},    // 2012
    {1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1},    // 2013
    {0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1},    // 2014
    {0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0},    // 2015
    {1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1},    // 2016
    {0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1},    // 2017
    {0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1},    // 2018
    {1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1},    // 2019
    {0, 1, 1, 1, 1, 0, 0, 1, 0, 1, 0, 1},    // 2020
    {0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},    // 2021
    {1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1},    // 2022
    {0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1},    // 2023
    {0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 2024
    {1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1, 0},    // 2025
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0},    // 2026
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0},    // 2027
    {1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 1, 0},    // 2028
    {1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 1},    // 2029
    {0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0},    // 2030
    {0, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 2031
    {1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1},    // 2032
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 1},    // 2033
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 1},    // 2034
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1},    // 2035
    {1, 1, 0, 1, 0, 0, 0, 0, 1, 0, 1, 1},    // 2036
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1},    // 2037
    {1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0},    // 2038
    {1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0},    // 2039
    {1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 0},    // 2040
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1},    // 2041
    {0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 1},    // 2042
    {0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1},    // 2043
    {1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1},    // 2044
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1},    // 2045
    {1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1},    // 2046
    {1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1},    // 2047
    {0, 1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0},    // 2048
    {1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 0},    // 2049
    {0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 2050
    {1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 1},    // 2051
    {0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 1},    // 2052
    {0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1},    // 2053
    {0, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1},    // 2054
    {0, 1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0},    // 2055
    {1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1},    // 2056
    {0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0},    // 2057
    {1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0},    // 2058
    {1, 0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0},    // 2059
    {1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0},    // 2060
    {1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0},    // 2061
    {1, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0},    // 2062
    {1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1},    // 2063
    {1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 2064
    {1, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1},    // 2065
    {0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1},    // 2066
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 2067
    {1, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 1},    // 2068
    {0, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1},    // 2069
    {0, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1},    // 2070
    {1, 0, 1, 0, 1, 0, 0, 1, 1, 0, 1, 1},    // 2071
    {1, 0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1},    // 2072
    {1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 0},    // 2073
    {1, 0, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0},    // 2074
    {1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1},    // 2075
    {0, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0},    // 2076
    {1, 0, 1, 0, 1, 0, 1, 1, 1, 0, 1, 0},    // 2077
    {1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1},    // 2078
    {0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1},    // 2079
    {1, 0, 1, 1, 0, 0, 1, 0, 0, 1, 1, 1},    // 2080
    {0, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1},    // 2081
    {0, 1, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1},    // 2082
    {0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},    // 2083
    {1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1},    // 2084
    {0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 1},    // 2085
    {0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 1, 0},    // 2086
    {1, 0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1},    // 2087
    {0, 1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0},    // 2088
    {1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0},    // 2089
    {1, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0},    // 2090
    {1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0},    // 2091
    {1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 0},    // 2092
    {0, 1, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0},    // 2093
    {0, 1, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1},    // 2094
    {0, 1, 0, 0, 1, 0, 1, 0, 1, 1, 1, 0},    // 2095
    {1, 0, 1, 0, 1, 0, 0, 1, 1, 1, 0, 1},    // 2096
    {1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1},    // 2097
    {1, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1},    // 2098
    {1, 1, 1, 1, 0, 0, 1, 0, 0, 1, 0, 1},    // 2099
    {1, 1, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0}    // 2100
};

     上面的数组只存了非闰月的情况,闰月还要用另一个一维数组存

这时可能有人问:一个int怎么同时存闰几月和闰月天数?

我们采用以下方案:

对于任意农历年,没闰月存0,闰小月直接存月数,闰大月存月数+20

static const int leap_info[]={
    8, 0, 0, 5, 0, 0, 24, 0, 0, 2,
    0, 6, 0, 0, 25, 0, 0, 2, 0, 27,
    0, 0, 5, 0, 0, 24, 0, 0, 2, 0,
    6, 0, 0, 25, 0, 0, 23, 0, 27, 0,
    0, 26, 0, 0, 24, 0, 0, 2, 0, 7,
    0, 0, 25, 0, 0, 23, 0, 8, 0, 0,
    6, 0, 0, 4, 0, 0, 3, 0, 7, 0,
    0, 5, 0, 0, 4, 0, 8, 0, 0, 26,
    0, 0, 4, 0, 10, 0, 0, 6, 0, 0,
    5, 0, 0, 3, 0, 8, 0, 0, 5, 0,
    0, 4, 0, 0, 2, 0, 7, 0, 0, 5,
    0, 0, 4, 0, 9, 0, 0, 26, 0, 0,
    4, 0, 0, 2, 0, 6, 0, 0, 5, 0,
    0, 3, 0, 11, 0, 0, 26, 0, 0, 5,
    0, 0, 2, 0, 7, 0, 0, 25, 0, 0,
    23, 0, 8, 0, 0, 26, 0, 0, 24, 0,
    0, 3, 0, 7, 0, 0, 5, 0, 0, 4,
    0, 8, 0, 0, 6, 0, 0, 4, 0, 0,
    3, 0, 7, 0, 0, 25, 0, 0, 4, 0,
    8, 0, 0, 26, 0, 0, 4, 0, 0, 2, 0
};

(上面的数据均为python生成)

由于作者最近忙,本文将分篇写,这是第一篇,也是作者第一篇博客,等代码成型后,会分享到GitHub上。

未完待续......

(作者github:  https://github.com/pystraf)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值