zoukankan      html  css  js  c++  java
  • 【Codeforces Round #645 (Div. 2) A】 Park Lighting

    题目链接

    【题目翻译】

    其实就是让你用一个1*2(可以缩小为1*1)的方块去填充整个n*m的方格。 问你最少需要多少个方格。

    【题解】

    如果长和宽某一个是偶数,那么显然可以让长为2的边顺着那个方向摆放。

    刚好需要(n/2*m)个,也即(n*m/2)

    如果都是奇数的话,我们可以截出来一个长度为奇数的,宽为1的一列,然后让那一列竖着填。

    ((n-1)/2+1)个,然后剩下的(n*(m-1))的,m-1肯定是偶数,所以答案是((m-1)/2*n)

    总计((n-1)/2+1+(m-1)*n/2=(n*m+1)/2).

    所以直接输出((n*m+1)/2)就好,向下取整。

    不过写的时候没想那么多。就直接贪了。

    【代码】

    #include<bits/stdc++.h>
    #define ll long long
    #define rei(x) scanf("%d",&x)
    #define rel(x) scanf("%I64d",&x)
    #define rep1(i,a,b) for (int i = a;i <= b;i++)
    #define rep2(i,a,b) for (int i = a;i >= b;i--)
    using namespace std;
    
    int n,m;
    
    int main(){
        #ifdef LOCAL_DEFINE
            freopen("D:\rush.txt","r",stdin);
        #endif
        int T;
        rei(T);
        while (T--){
            rei(n);rei(m);
            int cnt = 0;
            if (m&1){
                cnt += n/2;
                if(n&1) cnt++;
                m--;
            }
            cnt += n*(m/2);
            printf("%d
    ",cnt);
        }
        return 0;
    }
    
  • 相关阅读:
    TCL 双引号和花括号的区别
    在Vivado中调用ModelSim生成FSM的状态转移图
    基于配置文件的方式来配置AOP
    Spring MVC_Hello World
    重用切点表达式
    Spring MVC概述(2)
    Shiro_DelegatingFilterProxy
    Shiro-工作流程
    切面的优先级
    Shiro-集成Spring
  • 原文地址:https://www.cnblogs.com/AWCXV/p/12970185.html
Copyright © 2011-2022 走看看