eclazz.cpp

来自「工程算法 这是一个很有用的工程数值算法集锦」· C++ 代码 · 共 34 行

CPP
34
字号
int equiv(int i, int j)
{
    if ((i % 4) == (j % 4))
	{
		return -1;
	}
	else
	{
		return 0;
	}
}

void eclazz(int nf[], int n)
{
	int jj;
    nf[1] = 1;
    for (jj = 2; jj<=n; jj++)
	{
        nf[jj] = jj;
        for (int kk = 1; kk<=jj - 1; kk++)
		{
            nf[kk] = nf[nf[kk]];
            if (equiv(jj, kk))
			{
				nf[nf[nf[kk]]] = jj;
			}
		}
    }
    for (jj = 1; jj<=n; jj++)
	{
        nf[jj] = nf[nf[jj]];
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?