• 牛客练习赛22


    链接:https://www.nowcoder.com/acm/contest/132/A
    来源:牛客网

    有趣的题
    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 32768K,其他语言65536K
    64bit IO Format: %lld

    题目描述

    给6个火柴棍,问能不能拼成“熊”或者“象”
    “熊”:4根棍子长度一样,另外2根棍子长度不一样
    “象”:4根棍子长度一样,另外2根棍子长度一样。
    如果可以拼出熊,输出“Bear”
    如果可以拼出象,输出“Elephant”
    如果都不可以拼出,输出“Hernia”

    输入描述:

    一行六个数表示每个火柴棍的长度

    输出描述:

    输出一行一个字符串表示答案
    示例1

    输入

    复制
    4 2 5 4 4 4

    输出

    复制
    Bear
    示例2

    输入

    复制
    4 4 5 4 4 5

    输出

    复制
    Elephant
    示例3

    输入

    复制
    1 2 3 4 5 6

    输出

    复制
    Hernia

    备注:

    火柴棍长度在[1,9]内


     1 #include <iostream>
     2 
     3 using namespace std;
     4 
     5 int a[10];
     6 int main(){
     7     int n =6;
     8     while(n--){
     9         int x;
    10         cin>>x;
    11         a[x]++;
    12     }
    13     bool flag = false;
    14     for(int i=1;i<=9;i++){
    15             if(a[i]>=4){
    16                 a[i] = a[i]-4;
    17                 flag = true;
    18             }
    19     }
    20     if(flag){
    21         int x = 0;
    22         for(int i=0;i<=9;i++){
    23             if(a[i])
    24                 x++;
    25         }
    26         if(x==2)
    27             cout<<"Bear"<<endl;
    28         else{
    29             cout<<"Elephant"<<endl;
    30         }
    31     }else{
    32         cout<<"Hernia"<<endl;
    33     }
    34 
    35 
    36     return 0;
    37 }


    链接:https://www.nowcoder.com/acm/contest/132/B
    来源:牛客网

    送分题
    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 32768K,其他语言65536K
    64bit IO Format: %lld

    题目描述

    数据结构之神ccz又在出毒瘤数据结构了
    神出了这样一个题:
    给你三个数,在这三个数中间任意加*或者是+,然后可以随便打括号,只要这个表达式合法
    比如说1 2 3可以得到:
    • 1+2*3=7
    • 1*(2+3)=5
    • 1*2*3=6
    • (1+2)*3=9
    不能改变这三个数的原顺序
    最大化表达式的值

    输入描述:

    输入三行,每行一个数

    分别表示a,b,c

    输出描述:

    输出一行一个数表示答案
    示例1

    输入

    复制
    1
    2
    3

    输出

    复制
    9
    示例2

    输入

    复制
    2
    10
    3

    输出

    复制
    60

    备注:

    1 <= a , b , c <= 10
    
    
     1 #include <iostream>
     2 #define ll long long int
     3 using namespace std;
     4 
     5 int main(){
     6     ll a,b,c;
     7     cin>>a>>b>>c;
     8     ll  an,bn,cn,dn;
     9     an = a+b*c;
    10     bn = a*(b+c);
    11     cn = a*b*c;
    12     dn = (a+b)*c;
    13 
    14     an = max(an,bn);
    15     an = max(an,cn);
    16     an = max(an,dn);
    17     an = max(an,a+b+c);
    18     cout<<an<<endl;
    19 
    20     return 0;
    21 }

    链接:https://www.nowcoder.com/acm/contest/132/C
    来源:牛客网

    简单瞎搞题
    时间限制:C/C++ 1秒,其他语言2秒
    空间限制:C/C++ 32768K,其他语言65536K
    64bit IO Format: %lld

    题目描述

    一共有 n个数,第 i 个数是 xi 
    xi 可以取 [li , ri] 中任意的一个值。
    ,求 S 种类数。

    输入描述:

    第一行一个数 n。 
    然后 n 行,每行两个数表示 li,ri。

    输出描述:

    输出一行一个数表示答案。
    示例1

    输入

    复制
    5
    1 2
    2 3
    3 4
    4 5
    5 6

    输出

    复制
    26

    备注:

    1 ≤ n , li , ri ≤ 100


    bitset用了位运算可以好的解决这种问题.
    还没怎么看懂,,,,,,,,,.


     1 #include <iostream>
     2 #include <bitset>
     3 
     4 using namespace std;
     5 bitset<1000005> ans , t;
     6 int n;
     7 int main(){
     8     cin>>n;
     9     ans[0] = 1;
    10     for(int i=0;i<n;i++){
    11         int x,y;
    12         cin>>x>>y;
    13         t.reset();
    14         for(int j = x;j<=y;j++){
    15             t |= (ans<<j*j);
    16         }
    17         ans = t;
    18     }
    19     cout<<ans.count()<<endl;
    20     return 0;
    21 }








  • 相关阅读:
    状态模式作业
    建造者模式作业
    关于 IIS 上的 Speech 设置
    装饰模式作业
    《软件架构与设计模式》关于 抽象工厂模式 的一个小例子
    谈一谈为什么我要创建个人博客
    C#网站发布在IIS10上,Access数据库读取为空白的解决方案
    广义表 Head Tail
    c# asp.net4.0尚未在web服务器上注册
    装饰者模式(例子)
  • 原文地址:https://www.cnblogs.com/zllwxm123/p/9312591.html
Copyright © 2020-2023  润新知