hdu 4279 Number

代码如有错,请指出

找规律题。。。

打的表如下:

View Code
n  满足有公因子且不整除的数的个数  满足为奇数的个数(要求的答案)
1  0  0
2  0  0
3  0  0
4  0  0
5  0  0
6  1  1
7  0  1
8  1  2
9  1  3
10  3  4
11  0  4
12  3  5
13  0  5
14  5  6
15  4  6
16  4  6
17  0  6
18  7  7
19  0  7
20  7  8
21  6  8
22  9  9
23  0  9
24  9  10
25  3  11
26  11  12
27  6  12
28  11  13
29  0  13
30  15  14
31  0  14
32  11  15
33  10  15
34  15  16
35  8  16
36  16  16
37  0  16
38  17  17
39  12  17
40  17  18
41  0  18
42  23  19
43  0  19
44  19  20
45  16  20
46  21  21
47  0  21
48  23  22
49  5  23
50  25  24
51  16  24
52  23  25
53  0  25
54  29  26
55  12  26
56  25  27
57  18  27
58  27  28
59  0  28
60  33  29
61  0  29
62  29  30
63  22  30
64  26  30
65  14  30
66  39  31
67  0  31
68  31  32
69  22  32
70  39  33
71  0  33
72  37  34
73  0  34
74  35  35
75  30  35
76  35  36
77  14  36
78  47  37
79  0  37
80  39  38
81  23  39
82  39  40
83  0  40
84  49  41
85  18  41
86  41  42
87  28  42
88  41  43
89  0  43
90  55  44
91  16  44
92  43  45
93  30  45
94  45  46
95  20  46
96  53  47
97  0  47
98  51  48
99  34  48
100  52  48
101  0  48
102  63  49
103  0  49
104  49  50
105  50  50
106  51  51
107  0  51
108  61  52
109  0  52
110  63  53
111  36  53
112  55  54
113  0  54
114  71  55
115  24  55
116  55  56
117  40  56
118  57  57
119  20  57
120  73  58
121  9  59
122  59  60
123  40  60
124  59  61
125  22  61
126  79  62
127  0  62
128  57  63
129  42  63
130  75  64
131  0  64
132  81  65
133  22  65
134  65  66
135  56  66
136  65  67
137  0  67
138  87  68
139  0  68
140  81  69
141  46  69
142  69  70
143  20  70
144  82  70
145  30  70
146  71  71
147  58  71
148  71  72
149  0  72
150  99  73
151  0  73
152  73  74
153  52  74
154  87  75
155  32  75
156  97  76
157  0  76
158  77  77
159  52  77
160  85  78
161  26  78
162  99  79
163  0  79
164  79  80
165  78  80
166  81  81
167  0  81
168  105  82
169  11  83
170  99  84
171  58  84
172  83  85
173  0  85
174  111  86
175  50  86
176  87  87
177  58  87
178  87  88
179  0  88
180  115  89
181  0  89
182  103  90
183  60  90
184  89  91
185  38  91
186  119  92
187  24  92
188  91  93
189  74  93
190  111  94
191  0  94
192  115  95
193  0  95
194  95  96
195  92  96
196  104  96
197  0  96
198  127  97
199  0  97
200  109  98
201  66  98
202  99  99
203  32  99
204  129  100
205  42  100
206  101  101
207  70  101
208  103  102
209  26  102
210  147  103
211  0  103
212  103  104
213  70  104
214  105  105
215  44  105
216  129  106
217  34  106
218  107  107
219  72  107
220  129  108
221  26  108
222  143  109
223  0  109
224  117  110
225  97  111
226  111  112
227  0  112
228  145  113
229  0  113
230  135  114
231  104  114
232  113  115
233  0  115
234  151  116
235  48  116
236  115  117
237  78  117
238  135  118
239  0  118
240  157  119
241  0  119
242  127  120
243  76  120
244  119  121
245  72  121
246  159  122
247  28  122
248  121  123
249  82  123
250  143  124
251  0  124
252  163  125
253  30  125
254  125  126
255  120  126
256  120  126
257  0  126
258  167  127
259  40  127
260  153  128
261  88  128
262  129  129
263  0  129
264  169  130
265  54  130
266  151  131
267  88  131
268  131  132
269  0  132
270  183  133
271  0  133
272  135  134
273  122  134
274  135  135
275  70  135
276  177  136
277  0  136
278  137  137
279  94  137
280  169  138
281  0  138
282  183  139
283  0  139
284  139  140
285  134  140
286  159  141
287  44  141
288  175  142
289  15  143
290  171  144
291  96  144
292  143  145
293  0  145
294  199  146
295  60  146
296  145  147
297  110  147
298  147  148
299  32  148
300  203  149
301  46  149
302  149  150
303  100  150
304  151  151
305  62  151
306  199  152
307  0  152
308  177  153
309  102  153
310  183  154
311  0  154
312  201  155
313  0  155
314  155  156
315  160  156
316  155  157
317  0  157
318  207  158
319  36  158
320  179  159
321  106  159
322  183  160
323  32  160
324  202  160
325  80  160
326  161  161
327  108  161
328  161  162
329  50  162
330  235  163
331  0  163
332  163  164
333  112  164
334  165  165
335  68  165
336  221  166
337  0  166
338  177  167
339  112  167
340  201  168
341  38  168
342  223  169
343  46  169
344  169  170
345  162  170
346  171  171
347  0  171
348  225  172
349  0  172
350  219  173
351  128  173
352  181  174
353  0  174
354  231  175
355  72  175
356  175  176
357  158  176
358  177  177
359  0  177
360  241  178
361  17  179
362  179  180
363  138  180
364  209  181
365  74  181
366  239  182
367  0  182
368  183  183
369  124  183
370  219  184
371  56  184
372  241  185
373  0  185
374  207  186
375  168  186
376  185  187
377  38  187
378  255  188
379  0  188
380  225  189
381  126  189
382  189  190
383  0  190
384  241  191
385  138  191
386  191  192
387  130  192
388  191  193
389  0  193
390  279  194
391  36  194
392  213  195
393  130  195
394  195  196
395  80  196
396  259  197
397  0  197
398  197  198
399  176  198
400  226  198
401  0  198
402  263  199
403  40  199
404  199  200
405  180  200
406  231  201
407  44  201
408  265  202
409  0  202
410  243  203
411  136  203
412  203  204
413  62  204
414  271  205
415  84  205
416  213  206
417  138  206
418  231  207
419  0  207
420  301  208
421  0  208
422  209  209
423  142  209
424  209  210
425  100  210
426  279  211
427  64  211
428  211  212
429  182  212
430  255  213
431  0  213
432  269  214
433  0  214
434  247  215
435  204  215
436  215  216
437  38  216
438  287  217
439  0  217
440  265  218
441  181  219
442  243  220
443  0  220
444  289  221
445  90  221
446  221  222
447  148  222
448  243  223
449  0  223
450  313  224
451  48  224
452  223  225
453  150  225
454  225  226
455  160  226
456  297  227
457  0  227
458  227  228
459  164  228
460  273  229
461  0  229
462  327  230
463  0  230
464  231  231
465  218  231
466  231  232
467  0  232
468  307  233
469  70  233
470  279  234
471  156  234
472  233  235
473  50  235
474  311  236
475  110  236
476  273  237
477  160  237
478  237  238
479  0  238
480  329  239
481  46  239
482  239  240
483  212  240
484  256  240
485  98  240
486  313  241
487  0  241
488  241  242
489  162  242
490  311  243
491  0  243
492  321  244
493  42  244
494  271  245
495  244  245
496  247  246
497  74  246
498  327  247
499  0  247
500  289  248
501  166  248
502  249  249
503  0  249
504  337  250
505  102  250
506  279  251
507  190  251
508  251  252
509  0  252
510  367  253
511  76  253
512  247  254
513  182  254
514  255  255
515  104  255
516  337  256
517  54  256
518  295  257
519  172  257
520  313  258
521  0  258
522  343  259
523  0  259
524  259  260
525  274  260
526  261  261
527  44  261
528  349  262
529  21  263
530  315  264
531  178  264
532  305  265
533  50  265
534  351  266
535  108  266
536  265  267
537  178  267
538  267  268
539  114  268
540  373  269
541  0  269
542  269  270
543  180  270
544  277  271
545  110  271
546  387  272
547  0  272
548  271  273
549  184  273
550  339  274
551  44  274
552  361  275
553  82  275
554  275  276
555  260  276
556  275  277
557  0  277
558  367  278
559  52  278
560  349  279
561  234  279
562  279  280
563  0  280
564  369  281
565  114  281
566  281  282
567  234  282
568  281  283
569  0  283
570  411  284
571  0  284
572  321  285
573  190  285
574  327  286
575  130  286
576  364  286
577  0  286
578  301  287
579  192  287
580  345  288
581  86  288
582  383  289
583  60  289
584  289  290
585  286  290
586  291  291
587  0  291
588  403  292
589  46  292
590  351  293
591  196  293
592  295  294
593  0  294
594  399  295
595  204  295
596  295  296
597  198  296
598  327  297
599  0  297
600  417  298
601  0  298
602  343  299
603  202  299
604  299  300
605  160  300
606  399  301
607  0  301
608  309  302
609  266  302
610  363  303
611  56  303
612  403  304
613  0  304
614  305  305
615  288  305
616  361  306
617  0  306
618  407  307
619  0  307
620  369  308
621  218  308
622  309  309
623  92  309
624  413  310
625  121  311
626  311  312
627  260  312
628  311  313
629  50  313
630  463  314
631  0  314
632  313  315
633  210  315
634  315  316
635  128  316
636  417  317
637  128  317
638  351  318
639  214  318
640  369  319
641  0  319
642  423  320
643  0  320
644  369  321
645  302  321
646  351  322
647  0  322
648  413  323
649  66  323
650  399  324
651  284  324
652  323  325
653  0  325
654  431  326
655  132  326
656  327  327
657  220  327
658  375  328
659  0  328
660  477  329
661  0  329
662  329  330
663  272  330
664  329  331
665  226  331
666  439  332
667  48  332
668  331  333
669  222  333
670  399  334
671  68  334
672  457  335
673  0  335
674  335  336
675  304  336
676  356  336
677  0  336
678  447  337
679  100  337
680  409  338
681  226  338
682  375  339
683  0  339
684  451  340
685  138  340
686  385  341
687  228  341
688  343  342
689  62  342
690  499  343
691  0  343
692  343  344
693  322  344
694  345  345
695  140  345
696  457  346
697  54  346
698  347  347
699  232  347
700  443  348
701  0  348
702  471  349
703  52  349
704  371  350
705  330  350
706  351  351
707  104  351
708  465  352
709  0  352
710  423  353
711  238  353
712  353  354
713  50  354
714  507  355
715  228  355
716  355  356
717  238  356
718  357  357
719  0  357
720  499  358
721  106  358
722  375  359
723  240  359
724  359  360
725  160  360
726  495  361
727  0  361
728  425  362
729  237  363
730  435  364
731  56  364
732  481  365
733  0  365
734  365  366
735  388  366
736  373  367
737  74  367
738  487  368
739  0  368
740  441  369
741  302  369
742  423  370
743  0  370
744  489  371
745  150  371
746  371  372
747  250  372
748  417  373
749  110  373
750  535  374
751  0  374
752  375  375
753  250  375
754  411  376
755  152  376
756  517  377
757  0  377
758  377  378
759  312  378
760  457  379
761  0  379
762  503  380
763  112  380
764  379  381
765  370  381
766  381  382
767  68  382
768  495  383
769  0  383
770  515  384
771  256  384
772  383  385
773  0  385
774  511  386
775  170  386
776  385  387
777  338  387
778  387  388
779  56  388
780  565  389
781  78  389
782  423  390
783  272  390
784  434  390
785  158  390
786  519  391
787  0  391
788  391  392
789  262  392
790  471  393
791  116  393
792  529  394
793  70  394
794  395  395
795  372  395
796  395  396
797  0  396
798  567  397
799  60  397
800  463  398
801  268  398
802  399  399
803  80  399
804  529  400
805  270  400
806  439  401
807  268  401
808  401  402
809  0  402
810  575  403
811  0  403
812  465  404
813  270  404
814  447  405
815  164  405
816  541  406
817  58  406
818  407  407
819  376  407
820  489  408
821  0  408
822  543  409
823  0  409
824  409  410
825  414  410
826  471  411
827  0  411
828  547  412
829  0  412
830  495  413
831  276  413
832  435  414
833  156  414
834  551  415
835  168  415
836  465  416
837  290  416
838  417  417
839  0  417
840  617  418
841  27  419
842  419  420
843  280  420
844  419  421
845  216  421
846  559  422
847  182  422
848  423  423
849  282  423
850  519  424
851  56  424
852  561  425
853  0  425
854  487  426
855  412  426
856  425  427
857  0  427
858  603  428
859  0  428
860  513  429
861  374  429
862  429  430
863  0  430
864  553  431
865  174  431
866  431  432
867  318  432
868  497  433
869  86  433
870  631  434
871  76  434
872  433  435
873  292  435
874  471  436
875  268  436
876  577  437
877  0  437
878  437  438
879  292  438
880  541  439
881  0  439
882  613  440
883  0  440
884  489  441
885  414  441
886  441  442
887  0  442
888  585  443
889  130  443
890  531  444
891  342  444
892  443  445
893  62  445
894  591  446
895  180  446
896  497  447
897  362  447
898  447  448
899  56  448
900  634  448
901  66  448
902  495  449
903  392  449
904  449  450
905  182  450
906  599  451
907  0  451
908  451  452
909  304  452
910  607  453
911  0  453
912  605  454
913  90  454
914  455  455
915  428  455
916  455  456
917  134  456
918  615  457
919  0  457
920  553  458
921  306  458
922  459  459
923  80  459
924  661  460
925  200  460
926  461  461
927  310  461
928  469  462
929  0  462
930  675  463
931  170  463
932  463  464
933  310  464
934  465  465
935  288  465
936  625  466
937  0  466
938  535  467
939  312  467
940  561  468
941  0  468
942  623  469
943  60  469
944  471  470
945  498  470
946  519  471
947  0  471
948  625  472
949  82  472
950  579  473
951  316  473
952  553  474
953  0  474
954  631  475
955  192  475
956  475  476
957  390  476
958  477  477
959  140  477
960  677  478
961  29  479
962  523  480
963  322  480
964  479  481
965  194  481
966  687  482
967  0  482
968  517  483
969  386  483
970  579  484
971  0  484
972  631  485
973  142  485
974  485  486
975  484  486
976  487  487
977  0  487
978  647  488
979  96  488
980  627  489
981  328  489
982  489  490
983  0  490
984  649  491
985  198  491
986  531  492
987  428  492
988  545  493
989  62  493
990  727  494
991  0  494
992  501  495
993  330  495
994  567  496
995  200  496
996  657  497
997  0  497
998  497  498
999  344  498
1000  585  499

代码如下:

View Code
 1 #include <cstdio>
 2 #include <cmath>
 3 #include <cstring>
 4 #include <algorithm>
 5 #include <iostream>
 6 
 7 using namespace std;
 8 
 9 long long a, b, t;
10 long long s1, s2;
11 
12 int main()
13 {
14      freopen("sum.in","r",stdin);
15      int T;
16      scanf("%d", &T);
17      while(T--) {
18           cin>>a>>b;
19           --a;
20           s1 = a >> 1;
21           s2 = b >> 1;
22 
23           t = sqrt(a);
24           s1 -= t >> 1;
25           s1 += t-(t>>1);
26 
27           t = sqrt(b);
28           s2 -= t >> 1;
29           s2 += t-(t>>1);
30 
31           if (a >= 1) s1 -= 1;
32           if (a >= 2) s1 -= 1;
33           if (b >= 1) s2 -= 1;
34           if (b >= 2) s2 -= 1;
35           s2 -= s1;
36           cout<<s2<<endl;
37      }
38      return 0;
39 }
posted @ 2012-09-09 18:24  yejinru  阅读(820)  评论(0编辑  收藏  举报