南洋工科大学のACMドールレース兼16は、メモリアル・トーナメントA食堂の座席を引退しました

トピック出典:http://acm.nyist.edu.cn/problem/1661

件名の説明:

再びこんにちは!氏PKとACMチームすべての審判は、この待望のゲームを満たすために準備ができている、あなたはどう?裁判官は、ゲームの難易度の表示が同じではありませんが、我々はまだそのタイトルのゲームのほとんどは、さらに興味深いの正規のポイントのレースよりも同意するものとします。幸運とゲームを楽しみます!
この大会での最初のタイトルとして、それは最も簡単になります。
大学が遭難事になっているので、PK、学校のカフェテリアで、彼らは非常に近くに座って喜んではありません、学生、または異性の学生の間で知りません。したがって、カフェテリアでは非常に多くの議席を持っていましたが、多くの場合、彼は席を見つけてみましょう。
誰か(それが上下行列の周りに、ある)座って喜んで誰もいないだろう席、彼のフロントとリアの左右に座ってNXM行列は、カフェテリアの座席をされると仮定します。あなたがアップし、同時に食べることができますどのように多くの人々に、上記に準拠している場合、同時にあまりご飯を食べに食堂でのPKは、それは、好奇心旺盛です。

説明を入力します。

第一の入力線T(1 <= T <= 100)、 Tは、グループクエリを表します。
各クエリの2つだけの整数N、M(1 <= N <= 100、1 <= M <= 100)。

サンプル入力:
2
2 2
6 4
出力例:
2
12

サイン質問、最初から最後間違った聴衆について考え始めるために私を導いた、この質問で、私は本当にあまりにも料理した
パリティの分類により、1が偶数2で、1は、2つの奇数偶数奇数であるが、見つかりました2つ以上の長い乗算添加し、奇数と偶数の二つは同じです。

参照コード:
#include<iostream>
#include<algorithm>
#include<cstdio>
#include<cstring>
#include<map>
#define ll long long
const int N=1e6+5;
#define inf 0x3f3f3f3f
using namespace std;
#define mem(a,b) memset(a,b,sizeof(a))
int n,m;
int main(){
    int t;
    cin>>t;
    while (t--) {
        cin >> n >> m;
        cout << (n * m + 1) / 2 << endl;
        //或者
        /*
        if(n*m%2==0){
        	cout<<n*m/2<<endl;
        }
        else{
        	cout<<n*m/2+1<<endl;
        }
        */
    }
    return 0;
}

おすすめ

転載: blog.csdn.net/nuoyanli/article/details/92444556