1. 程式人生 > >【ACM-ICPC 2018 南京賽區網路預賽】 J. Sum 【算術基本定理 + 離線分段打表】

【ACM-ICPC 2018 南京賽區網路預賽】 J. Sum 【算術基本定理 + 離線分段打表】

這裡寫圖片描述
分析:首先我們要用算術基本來找出求f(x)的規律,找到之後,我們只要求出字首和就行了,這裡可以用離線分段打表巧求,QAQ。
程式碼

#include <map>
#include <set>
#include <queue>
#include <stack>
#include <list>
#include <string>
#include <math.h>
#include <time.h>
#include <stdio.h>
#include <string.h>
#include <vector> #include <iostream> #include <algorithm> using namespace std; #define rep(i, l, r) for(int i = l; i < r; i++) #define per(i, r, l) for(int i = r; i >= l; i--) #include <ext/rope> using namespace __gnu_cxx; typedef long long ll; typedef unsigned long long
ull; typedef pair<int, int>pii; const int N = (int) 2e7 + 11; const int M = (int) 1e6 + 11; const int MOD = (int) 1e9 + 7; const double EPS = (double) 1e-9; const double PI = (double)acos(-1.0); const int INF = (int) 0x3f3f3f3f; const ll INFF = (ll) 0x3f3f3f3f3f3f3f3f; void read(int &x){ char
ch = getchar(); x = 0; while(ch < '0' || ch > '9') ch = getchar(); while(ch >= '0' && ch <= '9') { x = x * 10 + ch - '0'; ch = getchar(); } } /*-----------------------------------------------------------------------------------*/ int f(int n){ int ans = 0; for(int i = 2; i * i <= n; i++){ int cnt =0; while(n % i == 0) cnt ++, n/=i; if(cnt >= 3) return 0; // 不管怎麼拆分一定有一方不是要求的數 if(cnt == 1) ans++; } if(n != 1) ans++; return (1 << ans); // n = a * b ,我們可以構造出(1 << ans)個a(同時b也滿足要求) } int block = 2000; void init(){ ll F = 0; for(int i = 1; i < N; i++){ F += f(i); if(i % block == 0) printf("%lld,", F); } } ll F[20000 + 1]={0,7399,15853,24650,33794,43051,52424,61950,71657,81393,91191,101097,111084,121079,131115,141273,151440,161706,171957,182251,192584,203005,213498,223938,234496,244959,255535,266086,276666,287297,297950,308638,319288,330017,340810,351568,362367,373141,383963,394855,405683,416586,427511,438484,449483,460399,471468,482439,493421,504450,515459,526574,537622,548707,559821,570900,582037,593089,604330,615389,626633,637783,649001,660245,671501,682779,694000,705242,716463,727757,739045,750401,761711,773039,784306,795692,807021,818347,829773,841087,852483,863857,875254,886732,898149,909587,920998,932486,943934,955389,966912,978419,989968,1001463,1012896,1024390,1035906,1047437,1058984,1070473,1082052,1093641,1105298,1116919,1128407,1140025,1151599,1163265,1174864,1186538,1198114,1209672,1221375,1232958,1244670,1256322,1268029,1279689,1291330,1303011,1314718,1326433,1338074,1349727,1361474,1373276,1384977,1396747,1408562,1420263,1432028,1443754,1455580,1467302,1479089,1490835,1502566,1514387,1526271,1538029,1549817,1561656,1573550,1585384,1597175,1608989,1620823,1632677,1644472,1656369,1668193,1680153,1691988,1703897,1715758,1727545,1739486,1751403,1763275,1775198,1787135,1799012,1810893,1822836,1834719,1846643,1858619,1870510,1882507,1894466,1906390,1918272,1930259,1942206,1954209,1966195,1978112,1990066,2002109,2014107,2026146,2038115,2050176,2062060,2074071,2086096,2098153,2110109,2122128,2134153,2146136,2158276,2170315,2182413,2194348,2206431,2218390,2230483,2242530,2254610,2266667,2278697,2290850,2302852,2314979,2327135,2339280,2351224,2363372,2375420,2387549,2399624,2411763,2423913,2436037,2448152,2460230,2472359,2484572,2496675,2508871,2521047,2533094,2545303,2557472,2569601,2581758,2593981,2606188,2618350,2630462,2642625,2654814,2667037,2679252,2691445,2703672,2715880,2727977,2740197,2752371,2764568,2776835,2788994,2801193,2813462,2825619,2837877,2850050,2862385,2874639,2886899,2899108,2911371,2923655,2935915,2948150,2960404,2972646,2984935,2997158,3009422,3021669,3033919,3046309,3058528,3070792,3083143,3095436,3107705,3120032,3132272,3144601,3156921,3169202,3181515,3193870,3206101,3218458,3230825,3243119,3255402,3267732,3280065,3292418,3304757,3317140,3329447,3341770,3354169,3366520,3378815,3391098,3403438,3415735,3428094,3440555,3452864,3465215,3477572,3489932,3502366,3514717,3527154,3539549,3552044,3564369,3576753,3589201,3601629,3613936,3626370,3638735,3651181,3663597,3675992,3688437,3700834,3713305,3725730,3738181,3750531,3762978,3775405,3787775,3800237,3812702,3825186,3837573,3849950,3862490,3874779,3887250,3899689,3912152,3924649,3937065,3949619,3962001,3974430,3986994,3999440,4011910,4024464,4036865,4049282,4061777,4074173,4086714,4099201,4111735,4124245,4136649,4149203,4161629,4174216,4186735,4199203,4211681,4224267,4236737,4249174,4261690,4274181,4286730,4299181,4311685,4324165,4336650,4349110,4361698,4374205,4386772,4399353,4411861,4424465,4436965,4449551,4462012,4474621,4487066,4499628,4512145,4524627,4537325,4549842,4562479,4574948,4587584,4600125,4612686,4625286,4637767,4650332,4662941,4675533,4688114,4700581,4713273,4725790,4738511,4751042,4763626,4776257,4788794,4801405,4813862,4826537,4839088,4851700,4864289,4876886,4889555,4902131,4914741,4927289,4939933,4952564,4965143,4977730,4990388,5002921,5015625,5028224,5040868,5053627,5066241,5078897,5091425,5104024,5116664,5129374,5142019,5154630,5167276,5179914,5192569,5205138,5217863,5230524,5243229,5255862,5268528,5281195,5293924,5306643,5319255,5331847,5344610,5357181,5369867,5382556,5395254,5407989,5420651,5433318,5446032,5458705,5471422,5484079,5496754,5509462,5522180,5534823,5547453,5560189,5572960,5585611,5598330,5610978,5623791,5636494,5649219,5661785,5674572,5687265,5699901,5712727,5725430,5738179,5750870,5763602,5776204,5788991,5801686,5814434,5827083,5839856,5852545,5865325,5878078,5890782,5903537,5916243,5929034,5941713,5954510,5967312,5980049,5992756,6005474,6018324,6031087,6043828,6056549,6069335,6082132,6094911,6107672,6120392,6133203,6145918,6158737,6171421,6184246,6196958,6209757,6222499,6235283,6248080,6260885,6273553,6286386,6299195,6311976,6324796,6337664,6350452,6363223,6376049,6388725,6401534,6414247,6427035,6439878,6452693,6465469,6478285,6491162,6503987,6516762,6529580,6542359,6555158,6568001,6580831,6593715,6606398,6619199,6631974,6644824,6657605,6670503,6683344,6696034,6708952,6721791,6734674,6747446,6760299,6773127,6785922,6798768,6811641,6824417,6837116,6850100,6862870,6875721,6888522,6901373,6914273,6927108,6939941,6952767,6965625,6978412,6991317,7004315,7017155,7029992,7042798,7055644,7068543,7081361,7094214,7107061,7120001,7132735,7145690,7158539,7171452,7184402,7197252,7210052,7222889,7235812,7248770,7261667,7274438,7287263,7300123,7313062,7325860,7338799,7351801,7364665,7377542,7390463,7403384,7416284,7429267,7442040,7454972,7467898,7480799,7493789,7506666,7519641,7532507,7545416,7558237,7571174,7584082,7596969,7609896,7622904,7635707,7648647,7661628,7674449,7687380,7700348,7713232,7726203,7739107,7752127,7765117,7777952,7790859,7803782,7816682,7829629,7842471,7855499,7868350,7881384,7894493,7907280,7920221,7933207,7946138,7959058,7972061,7984911,7997841,8010820,8023685,8036658,8049672,8062722,8075565,8088403,8101596,8114450,8127413,8140438,8153374,8166355,8179295,8192274,8205235,8218140,8231224,8244124,8257084,8269997,8283116,8295914,8308865,8321906,8334893,8347909,8361009,8373990,8386908,8399947,8412945,8425960,8438864,8451805,8464809,8477859,8490756,8503715,8516711,8529797,8542723,8555748,8568821,8581801,8594859,8607899,8620788,8633861,8646872,8659954,8672835,8685987,8698946,8712055,8725001,8737982,8750981,8764001,8776972,8790016,8803080,8816199,8829152,8842096,8855140,8868097,8881114,8894107,8907197,8920195,8933220,8946192,8959237,8972275,8985356,8998322,9011392,9024375,9037389,9050422,9063509,9076467,9089417,9102547,9115658,9128625,9141638,9154690,9167660,9180847,9193910,9206939,9219953,9232961,9246119,9259166,9272197,9285275,9298285,9311298,9324417,9337538,9350470,9363554,9376640,9389735,9402676,9415766,9428838,9441839,9455014,9468043,9481177,9494157,9507284,9520374,9533443,9546495,9559561,9572728,9585743,9598836,9611846,9625004,9638215,9651213,9664333,9677429,9690447,9703502,9716613,9729814,9742850,9755938,9768999,9782166,9795137,9808269,9821311,9834406,9847477,9860608,9873710,9886950,9900019,9913054,9926139,9939335,9952341,9965501,9978572,9991689,10004819,10017983,10030976,10044044,10057146,10070402,10083336,10096549,10109675,10122802,10135824,10148844,10162007,10175126,10188148,10201367,10214511,10227602,10240819,10253895,10266995,10280203,10293218,10306332,10319479,10332588,10345820,10358853,10372033,10385024,10398179,10411389,10424585,10437632,10450843,10464016,10477188,10490232,10503423,10516496,10529747,10542883,10555939,10569101,10582222,10595386,10608523,10621647,10634926,10647956,10661161,10674240,10687414,10700623,10713843,10727009,10740072,10753210,10766468,10779603,10792710,10805861,10819051,10832181,10845404,10858515,10871705,10884769,10897901,10911113,10924313,10937504,10950569,10963697,10976807,10989996,11003239,11016501,11029655,11042955,11055954,11069223,11082397,11095514,11108854,11121919,11135127,11148308,11161375,11174529,11187901,11201007,11214186,11227379,11240591,11253783,11266950,11280141,11293395,11306524,11319756,11332921,11346131,11359287,11372418,11385610,11398800,11412103,11425318,11438462,11451647,11464883,11478008,11491434,11504509,11517807,11531043,11544147,11557404,11570557,11583798,11597052,11610374,11623507,11636772,11649860,11663081,11676237,11689405,11702663,11715896,11729193,11742329,11755595,11768820,11782021,11795095,11808311,11821663,11834897,11848115,11861262,11874433,11887707,11901023,11914328,11927525,11940835,11954016,11967204,11980364,11993705,12006909,12020192,12033290,12046524,12059801,12073077,12086270,12099401,12112807,12126025,12139196,12152419,12165711,12178959,12192161,12205426,12218748,12231933,12245254,12258400,12271606,12284885,12298258,12311474,12324765,12337963,12351215,12364380,12377719,12391040,12404160,12417504,12430631,12444019,12457206,12470473,12483765,12497007,12510265,12523516,12536774,12550027,12563249,12576594,12589800,12603103,12616468,12629646,12642912,12656166,12669466,12682862,12696057,12709335,12722647,12735931,12749192,12762456,12775707,12789067,12802341,12815516,12828845,12842145,12855435,12868643,12881918,12895190,12908563,12921848,12935024,12948364,12961597,12974878,12988106,13001411,13014699,13028065,13041358,13054579,13067729,13080984,13094408,13107688,13120976,13134293,13147564,13160850,13174166,13187504,13200916,13214318,13227533,13240695,13253953,13267350,13280676,13293951,13307298,13320508,13333806,13347125,13360411,13373693,13387020,13400332,13413568,13426943,13440246,13453602,13466951,13480167,13493561,13506778,13520191,13533545,13546821,13560103,13573496,13586774,13600134,13613431,13626679,13640111,13653326,13666608,13680055,13693259,13706527,13719869,13733230,13746662,13760013,13773238,13786622,13799890,13813263,13826603,13839892,13853247,13866499,13879867,13893185,13906537,13919860,13933211,13946457,13959779,13973124,13986514,13999779,14013248,14026622,14039906,14053203,14066515,14079815,14093234,14106692,14120008,14133265,14146665,14159978,14173373,14186683,14200115,14213372,14226806,14240151,14253309,14266823,14280141,14293604,14306864,14320169,14333544,14346856,14360172,14373513,14386885,14400304,14413677,14427061,14440283,14453540,14466934,14480349,14493638,14506946,14520392,14533751,14547087,14560502,14573924,14587304,14600692,14614132,14627528,14640853,14654166,14667472,14680940,14694328,14707624,14721013,14734422,14747910,14761242,14774657,14788025,14801383,14814820,14828132,14841542,14854944,14868263,14881852,14895162,14908527,14921887,14935343,14948672,14962175,14975453,14988913,15002249,15015685,15028988,15042279,15055781,15069206,15082574,15095996,15109405,15122815,15136264,15149599,15163003,15176353,15189684,15203046,15216378,15229821,15243283,15256723,15270050,15283484,15296935,15310431,15323818,15337170,15350506,15363842,15377273,15390837,15404126,15417592,15430844,15444457,15457662,15471234,15484663,15498017,15511357,15524804,15538288,15551720,15565059,15578433,15591829,15605252,15618726,15632215,15645585,15658940,15672378,15685772,15699264,15712767,15726171,15739539,15752947,15766253,15779716,15793160,15806571,15819976,15833402,15846854,15860307,15873809,15887236,15900565,15914009,15927503,15940795,15954270,15967735,15981225,15994523,16007935,16021455,16034728,16048266,16061729,16075118,16088498,16102040,16115344,16128806,16142253,16155759,16169348,16182688,16196180,16209491,16223024,16236416,16249847,16263185,16276705,16290134,16303550,16317066,16330499,16343867,16357343,16370781,16384244,16397659,16411233,16424686,16438188,16451750,16465173,16478549,16491942,16505460,16518908,16532492,16545883,16559225,16572714,16586180,16599543,16613105,16626421,16639897,16653390,16666832,16680249,16693757,16707285,16720588,16734026,16747591,16761109,16774582,16788042,16801580,16815064,16828445,16841943,16855398,16868992,16882400,16895868,16909312,16922803,16936281,16949918,16963312,16976726,16990187,17003734,17017152,17030743,17044071,17057555,17071064,17084434,17097918,17111452,17124977,17138487,17151905,17165414,17178812,17192359,17205892,17219426,17232818,17246232,17259783,17273262,17286646,17300148,17313678,17327148,17340555,17354131,17367657,17381186,17394660,17408234,17421704,17435227,17448658,17462124,17475663,17489105,17502481,17516076,17529680,17543179,17556693,17570196,17583594,17597118,17610633,17624129,17637612,17651067,17664641,17678073,17691671,17705165,17718749,17732187,17745712,17759294,17772680,17786235,17799719,17813338,17826788,17840285,17853923,17867321,17880846,17894318,17907854,17921312,17934848,17948260,17961808,17975341,17988996,18002402,18015903,18029507,18043047,18056515,18070085,18083659,18097283,18110713,18124011,18137533,18151158,18164610,18178181,18191768,18205186,18218758,18232206,18245761,18259283,18272867,18286380,18299914,18313462,18327078,18340593,18354109,18367625,

相關推薦

ACM-ICPC 2018 南京賽區網路預賽 J. Sum 算術基本定理 + 離線分段

分析:首先我們要用算術基本來找出求f(x)的規律,找到之後,我們只要求出字首和就行了,這裡可以用離線分段打表巧求,QAQ。 程式碼 #include <map> #include <set> #include <qu

ACM-ICPC 2018 南京賽區網路預賽Magical Girl Haze分層圖

Description:    There are NN cities in the country, and MM directional roads from uu to v(1\le u, v\le n)v(1≤u,v≤n). Every road has a dis

迴文樹 && 求本質不同迴文串的和ACM-ICPC 2018 南京賽區網路預賽 I. Skr

Step1 Problem: 給你一個字串 s,求本質不同的迴文字串的加和 mod 1e9+7。 例:s = “1111”, ans = 1111 + 111 + 11 + 1. 資料範圍: 1 <= len <= 2e6.

ACM-ICPC 2018 南京賽區網路預賽 J AC Challenge (狀壓dp)

題意 給你n道題,在你做第 i i {i}道題的時候有 p[j] p

AC Challenge [ ACM-ICPC 2018 南京賽區網路預賽 ] [dfs + 二進位制記憶化搜尋 ]

題意:有n個問題,做第i個問題得分是t*a[i]+bi, 但是做第i題之前還需要先做其他的一些題目….可以選擇不做完所有的題,問最後的最高得分. 思路:深搜就可以了,跟很多深搜的問題一樣,有很多重複的子問題,此題的記憶化很奇特用的二進位制類似狀壓的思想 AC co

ACM-ICPC 2018 南京賽區網路預賽 J.Sum [ 類 ]

A square-free integer is an integer which is indivisible by any square number except 11. For example, 6 = 2 \cdot 36=2⋅3 is square-free, but

ACM-ICPC 2018 南京賽區網路預賽 L. Magical Girl Haze(dijkstra+分層最短路)

思路來源 https://blog.csdn.net/zhangche0526/article/details/62881066 題意 給你n個城市,m條邊, 共有k次免費機會,可以將其中k條邊的權值變為0, 求點1到點n的最短路。 題解 (百度 分層圖最短路

#數論、分層最短路# ACM-ICPC 2018 南京賽區網路預賽

題目連結 An Olympian Math Problem Alice, a student of grade 66, is thinking about an Olympian Math problem, but she feels so despair that she c

ACM-ICPC 2018 南京賽區網路預賽 B. The writing on the wall(暴力)

題目連結:傳送門   題意:詢問你在一個n*m的矩陣中,有一些方塊被塗成了黑色,其他的方格為白色,讓你統計白方格形成的子矩陣的個數。   思路:比賽的時候沒有想去做,賽後補題的時候發現優美的暴力就能過,也有點遺憾。 觀看了大佬的部落格後~~~ 首先我們會求

ACM-ICPC 2018 南京賽區網路預賽 J. Sum(篩法+分塊)

題目連結:傳送門   題意:給你一個數字n,讓你求從1到n的每個數的乘數組合的個數,要求乘數滿足不能被平方數整除。   解決方法:比賽的時候想到用線性篩來先將不符合的數先標記出來,然後再去便利統計個數。一開始t了,後來改成分塊後因為程式碼寫挫wa了好多次,還是自己

ACM-ICPC 2018 南京賽區網路預賽

題意: 每個作業都有a和b,第i次做這個作業得到的分數為i*a+b。每個作業還可能會有前置作業。 問你最大分數是多少。可以不做。 POINT: 20個作業,可以狀壓。時間就是這個狀態1的

ACM-ICPC 2018 南京賽區網路預賽 C. GDY

題解 題目大意 n個人m張牌 從1號開始按順序每人直接取5張牌 題目保證每人都會有牌但不保證最後一個人的牌夠5張 類似於撲克牌大小關係2>1>13>12>…>4>3 從1開始出最小的牌 每次只能出一張 每次出牌只能出比上一

ACM-ICPC 2018 南京賽區網路預賽 J. Sum

A square-free integer is an integer which is indivisible by any square number except 11. For example, 6 = 2 \cdot 36=2⋅3 is square-free, b

ACM-ICPC 2018 徐州賽區網路預賽 A. Hard to prepare DP

題目連結 https://nanti.jisuanke.com/t/31453 題意 一個圓環,每個位置可以選擇2^k中任意一個數,要求相鄰位置異或不等於2k−12^{k-1}2k−1 做法 考慮遞推時的做法,如果我們把這道題轉換為求一條鏈上的方案數,就很容易遞

ACM-ICPC 2018 徐州賽區網路預賽 G. Trace 離散化+權值線段樹

題目連結 https://nanti.jisuanke.com/t/31459 題意 題意就是按順序給出一些左下角在原點的與坐標軸平行的矩形,題意就是按順序給出一些左下角在原點的與座標軸平行的矩形,題意就是按順序給出一些左下角在原點的與坐標軸平行的矩形, 後來的

ACM-ICPC 2018 南京賽區網路預賽部分題解

5題順利進現場 A 簽到 思路:打表找規律即可 L 最短路 隊友秒過,聽說是BZOJ原題,改為有向圖 J 線性篩 / 分塊打表 ,ans=f(n)的字首和 線性篩:

ACM-ICPC 2018 南京賽區網路預賽 L. Magical Girl Haze

There are NNN cities in the country, and MMM directional roads from uuu to v(1≤u,v≤n)v(1\le u, v\le n)v(1≤u,v≤n). Every road has a distanc

ACM-ICPC 2018 焦作賽區網路預賽 G. Give Candies 快速模冪+費馬小定理

 1000ms  65536K There are N children in kindergarten. Miss Li bought them N candies. To make the process more interesting, Miss Li comes

ACM-ICPC 2018 南京賽區網路預賽 I. Skr (迴文樹)

A number is skr, if and only if it's unchanged after being reversed. For example, "12321", "11" and "1" are skr numbers, but "123", "221"

ACM-ICPC 2018 焦作賽區網路預賽H. String and Times ---- 字尾自動機

題目傳送門 做法: 計算出每個狀態下的endpos,通過endpos在區間內統計maxlen[st] - minlen[st]+1 即 maxlen[st] - minlen[st]+1 = l[st