首页 > Windows开发 > 详细

Sicily 6136. Windows

时间:2015-03-24 23:15:17      阅读:365      评论:0      收藏:0      [点我收藏+]

6136. Windows

Constraints

Time Limit: 1 secs, Memory Limit: 256 MB

Description

Now that spring is here and the sun is shining bright, people are starting to lower their blinds. ?tefica is an elderly woman who likes to keep track of what other people in the neighbourhood are doing and then talk about it behind their backs. This year, she is particularly interested in who is lowering blinds in the building across the street, and how low are they lowering them.
We will represent each window with a 4 x 4 grid, with asteriskes representing lowered blinds. ?tefica can see a window in one of the following 5 states:

技术分享

The building across the street has N windows at each of the M floors. Given the current building state, find out how many windows are in each of the 5 states shown above.

 

Input

The first line of input contains space separated integers M and N (1 ≤ M, N ≤ 100).
The following lines describe the current building state. Each window is represented with one of the 4 x 4 grids shown above, and windows are separated using character ?#?. See the example input for clarification. Building description will have exactly 5M + 1 lines each having 5N + 1 characters.

 

Output

Output should contain 5 space separated integers, number of windows for each type in order shown above. Sum of these numbers is M*N.

 

Sample Input

样例1:
1 2 
########### 
#....#****# 
#....#****# 
#....#....# 
#....#....# 
###########
样例2:
2 3 
################ 
#****#****#****# 
#****#****#****# 
#****#....#****# 
#....#....#****# 
################ 
#....#****#****# 
#....#****#....# 
#....#....#....# 
#....#....#....# 
################

Sample Output

样例1:
1 0 1 0 0
样例2:
1 1 2 1 1

Problem Source

COCI 2012.4 2012年每周一赛第十一场

// Problem#: 6136
// Submission#: 2811354
// The source code is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License
// URI: http://creativecommons.org/licenses/by-nc-sa/3.0/
// All Copyright reserved by Informatic Lab of Sun Yat-sen University
#include <stdio.h>
#include <string.h>

char temp[5][501];
int num[5];

void judge(int col) {
    int counter = 0;
    for (int i = 1; i <= 4; i++) {
        if (temp[i][col] == '*') {
            counter++;
        }
    }
    num[counter]++;
}

int main() {
    int h, w;
    scanf("%d %d\n", &h, &w);
    memset(num, 0, sizeof(num));
    while (h--) {
        for (int i = 0; i < 5; i++) {
            gets(temp[i]);
        }
        for (int i = 0; i < w; i++) {
            judge(i * 5 + 1);
        }
    }
    for (int i = 0; i < 5; i++) {
        if (i)
            printf(" ");
        printf("%d", num[i]);
    }
    printf("\n");
    return 0;
}                     


Sicily 6136. Windows

原文:http://blog.csdn.net/u012925008/article/details/44595953

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!