zoukankan      html  css  js  c++  java
  • 2013 Multi-University Training Contest 6 部分解题报告

    problem 1001(hdu 4655)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=4655

     1 #include<stdio.h>
     2 #include<iostream>
     3 #include<algorithm>
     4 using namespace std;
     5 #define mm 1000000007
     6 int a[1000001];
     7 int b[1000001];
     8 __int64 x[1000001];
     9 __int64 mmax(__int64 x,__int64 y)
    10 {
    11     if(x>y)
    12     return x;
    13     else
    14     return y;
    15 }
    16 __int64 mmin(__int64 x,__int64 y)
    17 {
    18     if(x<y)
    19     return x;
    20     else
    21     return y;
    22 }
    23 __int64 jisuan(int n)
    24 {
    25     int i;
    26     __int64 sum;
    27     x[0]=1;
    28     x[1]=a[0];
    29     for(i=2;i<n;i++)x[i]=x[i-1]*a[i-1],x[i]%=mm;
    30     sum=a[0];
    31     for(i=1;i<n;i++)
    32     {
    33         sum=(sum%mm)*(a[i]%mm)+((((mmax(a[i],a[i-1])-1)*mmin(a[i],a[i-1]))%mm)*x[i-1])%mm;
    34         sum%=mm;
    35     }
    36     return sum;
    37 }
    38 int main()
    39 {
    40     int T,i,n;
    41     scanf("%d",&T);
    42     while(T--)
    43     {
    44         scanf("%d",&n);
    45         for(i=0;i<n;i++)
    46         {
    47             scanf("%d",&a[i]);
    48             b[i]=a[i];
    49         }
    50         sort(b,b+n);
    51         if(n%2==1)
    52         {
    53             for(i=0;i<n;i++)
    54             {
    55                 if(i%2==0)a[i]=b[i/2];
    56                 else a[i]=b[n/2+i/2+1];
    57             }
    58         }
    59         else
    60         {
    61             a[0]=b[0];
    62             a[1]=b[n/2];
    63             a[2]=b[n/2+1];
    64             for(i=3;i<n;i++)
    65             {
    66                 if(i%2==1)
    67                 a[i]=b[i/2];
    68                 else a[i]=b[n/2+i/2];
    69             }
    70         }
    71         printf("%I64d
    ",jisuan(n));
    72     }
    73     return 0;
    74 }
    View Code

     

    problem 1008(hdu 4662)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=4662

    MU Puzzle

    思路:统计I的个数,一个U代表3个I,最后的总数若是二的倍数而不是3的倍数,那么就是yes

     1 #include <iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 using namespace std;
     5 const int maxn=100010;
     6 char str[maxn];
     7 int main()
     8 {
     9 
    10     int n;
    11     scanf("%d",&n);
    12     int i;
    13     for(i=0; i<n; i++)
    14     {
    15         getchar();
    16         scanf("%s",str);
    17         int len=strlen(str);
    18         int j;
    19         int flag=1;
    20         int num=0;
    21         if(str[0]=='M')
    22         {
    23             for(j=1; j<len; j++)
    24             {
    25                 if(str[j]=='M')
    26                 {
    27                     flag=0;
    28                     break;
    29                 }
    30                 else if(str[j]=='I')
    31                 {
    32                     num+=1;
    33                 }
    34                 else
    35                 num+=3;
    36             }
    37             if(flag==0)
    38             printf("No
    ");
    39             else if(num==1||num==2)
    40             printf("Yes
    ");
    41             else if(num%2==0&&num%3!=0)
    42             printf("Yes
    ");
    43             else
    44             printf("No
    ");
    45         }
    46         else
    47         printf("No
    ");
    48 
    49     }
    50     return 0;
    51 }
    View Code
  • 相关阅读:
    正则化--L1正则化(稀疏性正则化)
    机器学习分类算法之随机森林
    机器学习分类算法之逻辑回归
    机器学习分类算法之朴素贝叶斯
    机器学习分类算法之K近邻(K-Nearest Neighbor)
    机器学习之特征工程
    uwsgi支持http长链接
    机器学习之数据预处理
    机器学习之场景解析
    机器学习之基本概念
  • 原文地址:https://www.cnblogs.com/wanglin2011/p/3254680.html
Copyright © 2011-2022 走看看