2 条题解

  • 0
    @ 2025-4-13 15:25:56

    #include<bits/stdc++.h> using namespace std; const int N=5+10; char a[N][N],b[N][N],c[N][N]; int n,ans[5]={0,1,2,3,4}; bool cmp(){ for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) if(a[i][j]!=c[i][j]) return false; return true; } void rotate(){ for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) b[i][j]=a[n+1-j][i]; for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) a[i][j]=b[i][j]; } void read(char a[N][N]){ for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) cin>>a[i][j]; } int main(){ cin>>n; read(a); read(c); for(int i=1;i<=4;i++){ rotate(); if(cmp()){ cout<<ans[i]; return 0; } } cout<<5; return 0; }

    • 0
      @ 2024-7-27 11:48:28
      #include<bits/stdc++.h>
      using namespace std;
      int n,cnt1,cnt2,cnt3,cnt4=0;
      char a[20][20],b[20][20];
      int main()
      {
      	cin>>n;
      	for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)cin>>a[i][j];
      	for(int i=1;i<=n;i++)for(int j=1;j<=n;j++)cin>>b[i][j];
      	
      	for(int i=1;i<=n;i++)
      	{
      		for(int j=1;j<=n;j++)
      		{
      			if(b[i][j]!=a[n+1-j][i]) cnt1++;
      			if(b[i][j]!=a[j][n+1-i]) cnt2++;
      			if(b[i][j]!=a[n+1-i][n+1-j]) cnt3++;
      			if(a[i][j]!=b[i][j]) cnt4++;
      		}
      	}
      	if(cnt1==0) cout<<"1";
      	else if(cnt2==0) cout<<"2";
      	else if(cnt3==0) cout<<"3";
          else if(cnt4==0) cout<<"4";
          else cout<<"5";
      }
      
      • 1

      信息

      ID
      1038
      时间
      1000ms
      内存
      128MiB
      难度
      6
      标签
      递交数
      79
      已通过
      22
      上传者