3 条题解

  • 2
    @ 2025-7-7 8:24:46
    #include<string>
    #include<windows.h>
    #include<bits/stdc++.h>
    using namespace std;
    long long n,sum=0;
    long long ans[100005];
    bool ss()
    {
        int ss1=0;
        for(int i=3; i<=n; i++)
        {
            if(ans[i]==ans[i-2])
                ss1++;
            else
            {
                ss1=0;
            }
            if(ss1==2)
                return 0;
        }
        return 1;
    }
    void dfs(int x)
    {
        if(x==n+1)
        {
            if(ss())
                sum++;
            return ;
        }
        for(int i=1;i<=3;i++)
        {
            ans[x]=i;
            dfs(x+1);
        }
    }
    int main()
    {
        
        cin>>n;
        dfs(1);
        cout<<sum;
        return 0;
    }
    
    
    
  • 0
    @ 2025-7-10 20:51:25
    #include<bits/stdc++.h>
    using namespace std;
    #define ll long long
    ll a[20],s,n;
    void dfs(ll deep){
    	if(deep-3>n){
    		s++;
    		return ;
    	}
    	for(int i=1;i<=3;i++)if(!(a[deep-1]==a[deep-3]&&i==a[deep-2]))a[deep]=i,dfs(deep+1);
    }
    int main(){
    	cin>>n;
    	dfs(4);
    	cout<<s;
    	return 0;
    }
    
    • 0
      @ 2025-7-7 8:57:41
      #include<bits/stdc++.h>
      using namespace std;
      long long n,ans,f,s,a[20];
      void dfs(int deep){
      if(deep>n){
      f=s=0;
      for(int k=3;k<=deep;k++){
      if(a[k]==a[k-2]) s++;
      else s=0;
      }
      if(s<2) ans++;
      return ;
      }
      for(int i=1;i<=3;i++){
      a[deep]=i;
      f=s=0;
      for(int k=3;k<=deep;k++){
      if(a[k]==a[k-2]) s++;
      else s=0;
      }
      if(s<2)dfs(deep+1);
      }
      }
      int main(){
      cin>>n;
      if(n>3)
      dfs(1);
      if(n==1)
      cout<<3;
      else if(n==2) cout<<9;
      else if(n==3) cout<<27;
      else cout<<ans;
      return 0;
      }
      
      • 1

      信息

      ID
      140
      时间
      1000ms
      内存
      256MiB
      难度
      7
      标签
      (无)
      递交数
      258
      已通过
      58
      上传者