[過去ログ] 【モリタポ有償】C/C++の問題を片付けます(2) (1001レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
764
(4): 2011/05/09(月)15:13 AAS
>>672をちょっと改良

#include <stdio.h>
#include <stdlib.h>
#define N 1000000
int main(void)
{
char sieve[N] = {0, 0, 1};
int i, j, k, head, tail, Ans, length, sum, tail_indx, sum_t;
int *prime, prime_cnt, prime_max;
for(i = 3; i < N; i += 2) sieve[i] = 1;
省17
768: 2011/05/10(火)03:16 AAS
>>758
これについて考察してみました。

>>549 を題材に、起点から大きい方向に足していくものと小さい方向に足していくものとを比べてみました。

なお、以下の改良を加えています。
>>549 の素数算出(素朴な方法)は割り算を一回にする(div_t div(int a, int b) を使う。)
>>549 の二分探索ルーチンは条件文を1つ削減
>>756 の枝刈りをとれる

起点は2から大きい方向に動き、起点からの走査方向は正
外部リンク:codepad.org
起点は2から大きい方向に動き、起点からの走査方向は負(オリジナルの>>549 や、sumS[] を使った >>752に近い)
省6
778
(1): 2011/05/10(火)04:09 AAS
>>764だとでsieve[]で素数がどうか確認するのは27回だけどな
781: 2011/05/10(火)04:32 AAS
>>778
確認しました。>>764 のやりかたは、まだ表っ面しか理解できていないので、
この回数の少なさの理由はまだよくわかっていません。
外部リンク:codepad.org
783: 2011/05/10(火)04:39 AAS
>>672>>764が理解できないってのは、小学生レベルの算数がまともに理解できないっていうのと同じ
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.027s