提交时间:2021-05-11 21:00:16
运行 ID: 19187
#include<bits/stdc++.h> using namespace std; int n,r[101],a[101][10],sum; int isDown(int x,int y){ int flag=0; for(int i=1;i<=x-1;i++){ if(a[i][y]){ flag=1; } } if(!flag) return 0; for(int i=n;i>=x+1;i--){ if(a[i][y]){ return 1; } } } int main(){ cin>>n>>r[1]; for(int i=2;i<=n;i++){ r[i]=(r[i-1]*6807+2831)%201701; r[i-1]%=10; for(int j=1;j<=r[i-1];j++){ a[i-1][j]=1; } if(i==n){ r[i]%=10; for(int j=1;j<=r[i];j++){ a[i][j]=1; } } } for(int i=2;i<=n-1;i++){ for(int j=1;j<=9;j++){ if(!a[i][j]){ if(isDown(i,j)){ sum++; }else break; } } } cout<<sum; return 0; }