zoukankan      html  css  js  c++  java
  • uva-10050-模拟水题

    一个社会研究组织决定通过一组简单的参数来模拟国家政党的行为.
    第一个参数一个正整数h(叫做罢工参数),用于指示在对应的政党在
    俩个连续休假之间的平均天数.虽然这个参数太简单了,它不是最完美的参数.
    但是它还是可以用来预测因为罢工带来的损失.以后是计算的例子.
    考虑三个政党,假设h1=3,h2=4,h3=8,hi代表i政党的罢工参数.下一步,我们将模拟这三个
    政党在N=14天内的行为.模拟的天数总数从周天开始,假设在周末假期(周五和周六)没有罢工.


    以上的模拟表明在14天内有五天罢工.在第六天没有罢工,因为它是周五,因此我们在俩周内
    有5天是没有工作的.

    在这个问题内,给你几个政党的罢工参数和N的值,你的任务是计算出在N天内有多少天因为
    罢工没有工作.


    输入
    输入的第一行是单个int类型的T表示有多少组测试用例.
    每一个测试用例的第一行包含一个int N(7<=N<=3650)表示这次模拟的天数.
    下一行包含另外一个int P(1<=p<=100)代表政党的数目,
    P后面的第i行包含一个正整数hi(永远不会是7的倍数)表示政党i的罢工参数.


    输出

    AC:0ms

    #include<stdio.h>
    #include<iostream>
    #include<queue>
    #include<memory.h>
    using namespace std;
    
    const int N = 3650+10;
    const int P = 100+10;
    
    int main()
    {
    	freopen("d:\1.txt", "r", stdin);
    	int t;
    	cin >> t;
    	while (t--)
    	{
    		int n, p;
    		cin >> n;
    		cin >> p;
    		int a[P][N];
    		memset(a, 0, sizeof(a));
    		int pp[P];
    		memset(pp, 0, sizeof(pp));
    		for(int i = 1; i <= p; i++)
    			cin >> pp[i];
    		for(int i = 1; i <= n; i++)
    		{
    			if(i % 7 == 6||i%7==0)
    				continue;
    			for(int j = 1; j <= p; j++)
    				if(i%pp[j]==0)
    				{
    					a[j][i] = 1;
    				}
    		}
    
    		int total = 0;
    		for(int i = 1; i <= n; i++)
    		{
    			if(i % 7 == 6||i%7==0)
    				continue;
    			for(int j = 1; j <= p; j++)
    				if(a[j][i] == 1)
    				{
    					total++;
    					break;
    				}
    		}
    		cout<<total<<endl;
    	}
    	return 0;
    }
    

      

  • 相关阅读:
    音频、视频等文件格式(.ts、.meta)及其认识
    元素之和最接近 0 的区间(部分和)
    元素之和最接近 0 的区间(部分和)
    说话的智慧
    说话的智慧
    工业相机基本参数以及选型参考(二)
    常用编程软件站点、镜像站、科技类 PDF
    常用编程软件站点、镜像站、科技类 PDF
    经典书单 —— 语言/算法/机器学习/深度学习/AI/CV/PGM
    hdu1024 Max Sum Plus Plus
  • 原文地址:https://www.cnblogs.com/shuiyonglewodezzzzz/p/6985893.html
Copyright © 2011-2022 走看看