⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zp2105_a.cpp

📁 浙江大学acm在线判题器代码集。 本人在浙大acm判题器上的所有代码(心血) acm.zju.edu.cn acm/icpc acm大学生程序设计竞赛 练习网站
💻 CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

//---------------------------------------------------------------------------

#pragma argsused
#include <iostream.h>
int main(int argc, char* argv[])
{
  int a,b,n,i;
  int p[10][10][55];
  for (a=0;a<7;a++)
    for (b=1;b<7;b++)
      if (a || b)
      {
        p[a][b][1]=1;  p[a][b][2]=1;
        p[a][b][3]=(a+b)%7;
        i=3;
        while (!( p[a][b][i-1]==1 && p[a][b][i]==1 ))
          p[a][b][++i]=(a*p[a][b][i-1]+b*p[a][b][i-2])%7;

        i-=2;
        p[a][b][0]=i;
      }
  for (a=1;a<7;a++)
  {
    p[a][0][1]=1; p[a][0][2]=1;
    p[a][0][3]=a;
    i=3;
    while (p[a][0][i]!=1)
      p[a][0][++i]=(a*p[a][0][i-1]+0*p[a][0][i-2])%7;

    i-=2;
    p[a][0][0]=i;
  }
  for (a=0;a<7;a++)
    for (b=0;b<7;b++)
      cout<<p[a][b][0]<<' ';
  cin>>a>>b>>n;
  while (a+b+n)
  {
    a%=7; b%=7;
    if (!a && !b)
      if (n<3)
        cout<<1;
      else
        cout<<0;
    else
    if (!b)
      if (n==1)
        cout<<1;
      else
      {
        n--; n%=p[a][0][0];
        if (n==0) n=p[a][0][0];
        n++;
        cout<<p[a][0][n];
      }
    else
    {
      n%=p[a][b][0];
      if (n==0) n=p[a][b][0];
      cout<<p[a][b][n];
    }
    cout<<endl;
    cin>>a>>b>>n;
  }
  return 0;
}
//---------------------------------------------------------------------------

⌨️ 快捷键说明

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