zoukankan      html  css  js  c++  java
  • cf 463D

    D. Gargari and Permutations
    time limit per test
    2 seconds
    memory limit per test
    256 megabytes
    input
    standard input
    output
    standard output

    Gargari got bored to play with the bishops and now, after solving the problem about them, he is trying to do math homework. In a math book he have found k permutations. Each of them consists of numbers 1, 2, ..., n in some order. Now he should find the length of the longest common subsequence of these permutations. Can you help Gargari?

    You can read about longest common subsequence there:https://en.wikipedia.org/wiki/Longest_common_subsequence_problem

    Input

    The first line contains two integers n and k (1 ≤ n ≤ 1000; 2 ≤ k ≤ 5). Each of the next k lines contains integers 1, 2, ..., n in some order — description of the current permutation.

    Output

    Print the length of the longest common subsequence.

    Sample test(s)
    input
    4 3
    1 4 2 3
    4 1 2 3
    1 2 4 3
    output
    3
    Note

    The answer for the first test sample is subsequence [1, 2, 3].

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<string>
    #include<cmath>
    #include<cstdlib>
    #include<algorithm>
    using namespace std;
    int n,k,cnt[1002][1002],a[1002],f[1002];
    int main()
    {
          int ans=0;
          scanf("%d%d",&n,&k);
          for(int i=0;i<k;i++)
          {
                for(int j=0;j<n;j++)
                {
                      scanf("%d",&a[j]);
                      for(int c=0;c<j;c++)
                            cnt[a[c]][a[j]]++;
                }
          }
          for(int i=0;i<n;i++)
          {
               f[a[i]]=1;
               for(int j=0;j<i;j++)
               {
                     if(cnt[a[j]][a[i]]==k)
                     {
                           f[a[i]]=max(f[a[i]],f[a[j]]+1);
                     }
               }
               ans=max(ans,f[a[i]]);
          }
          printf("%d
    ",ans);
          return 0;
    }
    

      

  • 相关阅读:
    A2-02-15.DML-MySQL RIGHT JOIN
    A2-02-14.DML- MySQL LEFT JOIN
    A2-02-13.DML- MySQL INNER JOIN
    NHibernate N+1问题实例分析和优化
    怎么创建移动页面应用程序
    .NET开发时让人头痛的SESSION超时
    WCF服务编程——数据契约快速入门
    数据模型类对比,用反射做个快乐的程序员
    javascript常见数据集
    provider:命名管道提供程序,error:40
  • 原文地址:https://www.cnblogs.com/a972290869/p/4240708.html
Copyright © 2011-2022 走看看