• 代码中转站


    #include<stdio.h>
    #include<string.h>
    #include<algorithm>
    using namespace std;
    
    const int N=505;
    
    int n,m,p,ans;
    int t[N<<1],r[N];
    int a[N][N];
    
    void init(){
        sort(t+1,t+m+1);
        r[1]=t[1]+p-t[m];
        for(int i=2;i<=m;i++)r[i]=t[i]-t[i-1];
        for(int i=1;i<=m;i++)t[i]=r[i];
    }
    
    int main(){
    	freopen("plate.in","r",stdin);
    	freopen("plate.out","w",stdout);
        scanf("%d%d%d",&n,&m,&p);
        for(int i=1;i<=n;i++){
            for(int j=1;j<=m;j++)scanf("%d",&t[j]);
            init();
            for(int j=1;j<=m;j++)t[j+m]=t[j];
            int p,p1=1,p2=2,len;
            while(p1<=m&&p2<=m){
            	len=0;
                while(t[p1+len]==t[p2+len]&&len<m)++len;
                if(len==m)break;
                if(t[p1+len]>t[p2+len]){
                    p1=p1+len+1;
                    if(p1==p2)++p2;
                }
                else {
                    p2=p2+len+1;
                    if(p1==p2)++p1;
                }
            }
            p=min(p1,p2);
            for(int j=1;j<=m;j++)a[i][j]=t[p+j-1];
        }
        for(int i=1;i<=n;i++)
            for(int j=i+1;j<=n;j++){
            	bool f=1;
                for(int k=1;k<=m;k++){
                    f&=(a[i][k]==a[j][k]);
                }
                ans+=f;
            }
        printf("%d
    ",ans);
        return 0;
    }
    
  • 相关阅读:
    东坡诗词(选)
    网络编程_网络基础
    命名空间
    python常见报错类型和异常处理
    关于文件操作
    python支持的基本数据类型及其简单操作
    运算符
    python简介
    python实现简单四则运算计算器
    Memory barrier
  • 原文地址:https://www.cnblogs.com/opethrax/p/11722517.html
Copyright © 2020-2023  润新知