zoukankan      html  css  js  c++  java
  • 【ACM打卡】1195

    1195

    * 说的是家里有很多电器,但是电器全开的话就会超过家庭用电的最大功率。
    * 然后给你一些电器和各个电器所使用的功率。然后又给出了几个操作,问按照操作的顺序
    * 是否会超出额定功率。如果超出就输出超出了。
    * 如果没有那么就输出按照这个操作所能达到的最大功率。
    * op数组不知道开多大,2000可过。

    英文真的。。。借鉴了别人的哎。困死了。不能白天总不在家搞学习啊啊啊!!!晚上11点多才开始学习我的皮肤呵呵呵。

    笔记:

    void *memset(void *s, int ch, size_t n);
    函数解释:将s中前n个字节 (typedef unsigned int size_t )用 ch 替换并返回 s 。

    memset:作用是在一段内存块中填充某个给定的值,它是对较大的结构体或数组进行清零操作的一种最快方法。


    1195

    #include <stdio.h>
    #include <string.h>
    int main()
    {
        int flag[22],device[22],c,op[2000];
        int n,m;
        int t = 1;
        while(scanf("%d %d %d",&n,&m,&c)!=EOF&&n&&m&&c)
        {
            int i,j;
            int tmp = 0;
            for(i = 1;i<=n;i++)
            {
                scanf("%d",&device[i]);
                flag[i] = 0;
            }
                for(j = 1;j<=m;j++)
                {
                    scanf("%d",&op[j]);
                }
                int sum = 0;
                int max = 0;
                for(j = 1;j<=m;j++)
                {
                    if(!flag[op[j]])
                    {
                        sum+=device[op[j]];
                        flag[op[j]] = 1;
                        if(sum>c)
                        {
                            tmp = 1;
                            break;
                        }
                    }
                    else
                    {
                        sum-=device[op[j]];
                        flag[op[j]] = 0;
                    }
                     if(sum>max)
                        {
                            max = sum;
                        }
                }
                if(!tmp)
                {
                    printf("Sequence %d
    ",t);
                    printf("Fuse was not blown.
    ");
                    printf("Maximal power consumption was %d amperes.
    ",max);
                }
                else
                {
                    printf("Sequence %d
    ",t);
                    printf("Fuse was blown.
    ");
                }
            t++;
            printf("
    ");
        }
        return 0;
    }


  • 相关阅读:
    正则表达式简介
    每个程序员都必须遵守的编程原则
    String, StringBuffer, StringBuilder
    一些软件设计的原则
    A hard puzzle ACM HDU1097
    ACM HDU 1032The 3n + 1 problem
    Humble Numbers HDU 1058 ACM
    ACM HDU 1028Ignatius and the Princess III
    HangOver ACM HDU1056
    ACM HDU 1021Fibonacci Again
  • 原文地址:https://www.cnblogs.com/iriswang/p/11084676.html
Copyright © 2011-2022 走看看