码迷,mamicode.com
首页 > 其他好文 > 详细

UVA - 12874 Blanket

时间:2015-08-07 20:07:24      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:uva

UVA - 12874 Blanket

题意:
    给你n个毯子,m个人,并给你每条毯子厚的部分的长度和该厚的部分出现的周期;
    求盖了0--n 个毯子的人数。
代码:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<string>
#include<map>
#include<set>
#include<cmath>
#include<queue>
#include<vector>
#include<stack>
#include<cstdlib>
#pragma comment(linker, "/STACK:1024000000")
#define root 1, n, 1
#define lson l, mid, rt<<1
#define rson mid+1, r, rt<<1|1
#define intxt  freopen("in.txt","r",stdin);
#define outtxt freopen("out.txt","w",stdout);
#define _LL __int64
#define LL long long
#define pi acos(-1.0)
#define PB push_back()
#define MP make_pair()
#define BG begin()
#define ED end()
#define clr(a,b)  memset(a,b,sizeof(a))
#define inf 0x3f3f3f3f
#define Mod  1e9+7
using namespace std;
 const int MAX=1000005;
int A[MAX];
int arr[17][17];
int result[MAX];
int ans[MAX/10+10];

 int main(){
     #ifndef ONLINE_JUDGE
     intxt;
     outtxt;
     #endif // ONLINE_JUDGE
      int T;
      cin>>T;
      while(T--)
      {
          int n,m,a,b;
          clr(arr,0);
          clr(ans,0);
          scanf("%d%d",&n,&m);
          for(int i=0;i<=m;i++)
            result[i]=0;
          for(int i=0;i<n;i++){
            scanf("%d%d",&a,&b);
            arr[a][b]++;
          }
          //   a>=1&&a<=16   b>=1&&b<=16  
          //   处理这道题Key: 每次找到铺开的开始位置和结束位置 用1 -1处理。
         for(int i=1; i<=16; i++)
           for(int j=1; j<=16; j++){
             if(!arr[i][j])  continue;
            for(int k=0; k<m; k+=j){
                result[k]+=arr[i][j];
                result[k+i]-=arr[i][j];
            }
         }
         ans[result[0]]++;
         for(int i=1; i<m; i++){
            result[i]+=result[i-1];
            ans[ result[i] ]++;
         }
         for(int i=0; i<=n ; i++)
            printf("%d\n",ans[i]);
      }
     return 0;
 }

版权声明:本文为博主原创文章,未经博主允许不得转载。

UVA - 12874 Blanket

标签:uva

原文地址:http://blog.csdn.net/u013514722/article/details/47341783

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!