1 条题解

  • 0
    @ 2025-10-10 15:45:59

    C++ :

    #include<iostream>
    using namespace std;
    int main()
    {
      int f[1001][2],n,i,x;
      cin>>n;
      f[1][1]=1;f[1][0]=9;                        
      for(i=2;i<=n;i++) 
       {   
          x=f[1][0];
          if(i==n)x--;
          f[i][0]=(f[i-1][0]*x+f[i-1][1])%12345;
          f[i][1]=(f[i-1][1]*x+f[i-1][0])%12345;   
       }
       cout<<f[n][0]; 
       return 0;
    }
    
    

    Java :

    
    import java.util.Scanner;
    
    public class Main {
    	public static void main(String[] args) {
    		Scanner sc = new Scanner(System.in);
    		int a[] = new int[1001];
    		int b[] = new int[1001];
    		int i,n;
    		n = sc.nextInt();
    		a[1]=1;
    		b[1]=8;
    		for(i=2;i<=n;i++){
    			a[i] = (a[i-1]*9+b[i-1])%12345;
    			b[i] = (b[i-1]*9+a[i-1])%12345;
    		}
    		System.out.println(b[n]);		
    		sc.close();
    		
    	}
    }
    
    
    • 1

    信息

    ID
    345
    时间
    1000ms
    内存
    256MiB
    难度
    10
    标签
    递交数
    7
    已通过
    1
    上传者