problemscpp
A collection of my answers to algorithm problems in c++.
函数
acwing::acwing3380 命名空间参考

  1. 质因数的个数
更多...

函数

bool add (long long n)
 
bool add (unsigned long long n)
 
int main (istream &cin, ostream &cout)
 
 TEST (acwing3380, case1)
 
 TEST (acwing3380, case2)
 

详细描述

  1. 质因数的个数

函数说明

◆ add() [1/2]

bool acwing::acwing3380::add ( long long  n)

◆ add() [2/2]

bool acwing::acwing3380::add ( unsigned long long  n)

在文件 acwing408.cpp1993 行定义.

1993 {
1994 if(n < 2)
1995 return false;
1996 for(unsigned long long i = 2; i * i <= n; i++)
1997 if(n % i == 0)
1998 return false;
1999 return true;
2000 }

被这些函数引用 main().

◆ main()

int acwing::acwing3380::main ( istream &  cin,
ostream &  cout 
)

在文件 acwing408.cpp2002 行定义.

2002 {
2003 unsigned long long n;
2004 while(cin >> n) {
2005 unsigned long long k = 0;
2006 for(unsigned long long i = 2; i * i <= n; i++) {
2007 if(add(i)) {
2008 while(n % i == 0)
2009 n /= i, k++;
2010 }
2011 }
2012 if(add(n))
2013 k++;
2014 cout << k << endl;
2015 }
2016 return 0;
2017 }
bool add(unsigned long long n)
Definition: acwing408.cpp:1993

引用了 add().

被这些函数引用 TEST().

◆ TEST() [1/2]

acwing::acwing3380::TEST ( acwing3380  ,
case1   
)

在文件 acwing408_test.cpp2188 行定义.

2188 {
2189 istringstream in("120");
2190 auto out = ostringstream();
2191 main(in, out);
2192 const auto ans = out.str();
2193 ASSERT_EQ("5\n", ans);
2194 }
int main(int argc, char **argv)
Definition: main.cpp:5

引用了 main().

◆ TEST() [2/2]

acwing::acwing3380::TEST ( acwing3380  ,
case2   
)

在文件 acwing408_test.cpp2196 行定义.

2196 {
2197 istringstream in("153297569\n"
2198 "594432637\n"
2199 "659602991\n"
2200 "458462013\n"
2201 "337494475\n"
2202 "238464665\n"
2203 "13359727\n"
2204 "795497352\n"
2205 "86320458\n"
2206 "684897561\n"
2207 "851367896\n"
2208 "999999599\n"
2209 "999999223\n"
2210 "238773878\n"
2211 "186862050\n"
2212 "289691012\n"
2213 "322255235\n"
2214 "999998023\n"
2215 "449518270\n"
2216 "145866395\n"
2217 "674175420\n"
2218 "965180886\n"
2219 "894529843\n"
2220 "757148635\n"
2221 "567743053\n"
2222 "188315963\n"
2223 "963993450\n"
2224 "523693501\n"
2225 "484634037\n"
2226 "797090095\n"
2227 "525850373\n"
2228 "999998863\n"
2229 "366476127\n"
2230 "926629123\n"
2231 "441584822\n"
2232 "652965457\n"
2233 "332893800\n"
2234 "65465111\n"
2235 "999999893\n"
2236 "224232641\n"
2237 "608808463\n"
2238 "989660733\n"
2239 "999998537\n"
2240 "198426748\n"
2241 "727985684\n"
2242 "374390678\n"
2243 "999998609\n"
2244 "999998641\n"
2245 "198318145\n"
2246 "999998533\n"
2247 "833700685\n"
2248 "762460148\n"
2249 "236737316\n"
2250 "999997967\n"
2251 "999998059\n"
2252 "314157275\n"
2253 "94235972\n"
2254 "357160876\n"
2255 "978584525\n"
2256 "999998683\n"
2257 "413637171\n"
2258 "465296810\n"
2259 "999999883\n"
2260 "23518975\n"
2261 "151126261\n"
2262 "68452145\n"
2263 "999998003\n"
2264 "86700479\n"
2265 "92785530\n"
2266 "721403011\n"
2267 "789286270\n"
2268 "47265221\n"
2269 "775066945\n"
2270 "896679144\n"
2271 "265114090\n"
2272 "255838329\n"
2273 "999999059\n"
2274 "999998959\n"
2275 "999998929\n"
2276 "987198276\n"
2277 "954102776\n"
2278 "357980512\n"
2279 "999999107\n"
2280 "999999541\n"
2281 "285426256\n"
2282 "70024864\n"
2283 "510689713\n"
2284 "999999757\n"
2285 "84010461\n"
2286 "977451172\n"
2287 "2410627\n"
2288 "549027526\n"
2289 "999999131\n"
2290 "75025319\n"
2291 "999998017\n"
2292 "705069535\n"
2293 "983668771\n"
2294 "963859038\n"
2295 "999999323\n"
2296 "999998687");
2297 auto out = ostringstream();
2298 main(in, out);
2299 const auto ans = out.str();
2300 ASSERT_EQ("2\n"
2301 "3\n"
2302 "2\n"
2303 "3\n"
2304 "5\n"
2305 "2\n"
2306 "3\n"
2307 "8\n"
2308 "9\n"
2309 "4\n"
2310 "4\n"
2311 "1\n"
2312 "1\n"
2313 "4\n"
2314 "7\n"
2315 "6\n"
2316 "2\n"
2317 "1\n"
2318 "5\n"
2319 "3\n"
2320 "8\n"
2321 "4\n"
2322 "2\n"
2323 "3\n"
2324 "2\n"
2325 "4\n"
2326 "6\n"
2327 "1\n"
2328 "4\n"
2329 "3\n"
2330 "2\n"
2331 "1\n"
2332 "2\n"
2333 "3\n"
2334 "4\n"
2335 "3\n"
2336 "10\n"
2337 "1\n"
2338 "1\n"
2339 "2\n"
2340 "2\n"
2341 "4\n"
2342 "1\n"
2343 "5\n"
2344 "5\n"
2345 "3\n"
2346 "1\n"
2347 "1\n"
2348 "3\n"
2349 "1\n"
2350 "2\n"
2351 "3\n"
2352 "3\n"
2353 "1\n"
2354 "1\n"
2355 "3\n"
2356 "5\n"
2357 "4\n"
2358 "4\n"
2359 "1\n"
2360 "3\n"
2361 "4\n"
2362 "1\n"
2363 "3\n"
2364 "4\n"
2365 "2\n"
2366 "1\n"
2367 "2\n"
2368 "4\n"
2369 "3\n"
2370 "3\n"
2371 "2\n"
2372 "2\n"
2373 "8\n"
2374 "4\n"
2375 "3\n"
2376 "1\n"
2377 "1\n"
2378 "1\n"
2379 "5\n"
2380 "5\n"
2381 "8\n"
2382 "1\n"
2383 "1\n"
2384 "7\n"
2385 "9\n"
2386 "2\n"
2387 "1\n"
2388 "4\n"
2389 "3\n"
2390 "1\n"
2391 "4\n"
2392 "1\n"
2393 "2\n"
2394 "1\n"
2395 "4\n"
2396 "2\n"
2397 "4\n"
2398 "1\n"
2399 "1\n",
2400 ans);
2401 }

引用了 main().