HDU - 6292 G - Problem G

由于博客顯示原因原題顯示有異常

原題鏈接(https://vjudge.net/contest/274223#problem/G)

著名出題人小Q每次比賽后都會(huì)寫一份《賽題分析》,包含比賽概況、每題的參考算法以及一些統(tǒng)計(jì)數(shù)值。

對(duì)于一道題來說,小Q會(huì)統(tǒng)計(jì)最短的驗(yàn)題人代碼長度(Shortest judge solution)以及賽內(nèi)參賽隊(duì)伍最短的AC代碼長度(Shortest team solution)。

統(tǒng)計(jì)驗(yàn)題人代碼長度比較容易,因?yàn)轵?yàn)題人最多也不會(huì)超過
20
20
個(gè)。但是統(tǒng)計(jì)選手代碼長度就不容易了,因?yàn)榇筚悈^(qū)動(dòng)輒三四百支隊(duì)伍。

請(qǐng)寫一個(gè)程序,幫助小Q統(tǒng)計(jì)最短代碼長度。
Input
第一行包含一個(gè)正整數(shù)
T(1≤T≤13)
T(1≤T≤13)
,表示賽題數(shù)量。

每道題第一行包含兩個(gè)整數(shù)
n,m(2≤n≤20,0≤m≤500)
n,m(2≤n≤20,0≤m≤500)
,分別表示驗(yàn)題人數(shù)量以及AC了該題的隊(duì)伍數(shù)量。

第二行包含
n
n
個(gè)正整數(shù)
a
1
,
a
2
,...,
a
n
(50≤
a
i
≤65536)
a1,a2,...,an(50≤ai≤65536)
,依次表示每個(gè)驗(yàn)題人的代碼字節(jié)數(shù)。

第三行包含
m
m
個(gè)正整數(shù)
b
1
,
b
2
,...,
b
n
(50≤
b
i
≤65536)
b1,b2,...,bn(50≤bi≤65536)
,依次表示每支AC隊(duì)伍的代碼字節(jié)數(shù)。若
m=0
m=0
則該行為空行。
Output
對(duì)于第
i(1≤i≤T)
i(1≤i≤T)
道題,輸出三行,第一行輸出Problem
x
x
:,其中
x=i+1000
x=i+1000
。

第二行輸出Shortest judge solution:
y
y
bytes.,其中
y
y
表示最短的驗(yàn)題人代碼字節(jié)數(shù)。

第三行輸出Shortest team solution:
z
z
bytes.,其中
z
z
表示最短的選手代碼字節(jié)數(shù),若不存在請(qǐng)輸出N/A。

注意:間隔都是一個(gè)空格。
Sample Input
2
3 2
3627 1460 5288
2365 2671
2 0
5510 7682
Sample Output
Problem 1001:
Shortest judge solution: 1460 bytes.
Shortest team solution: 2365 bytes.
Problem 1002:
Shortest judge solution: 5510 bytes.
Shortest team solution: N/A bytes.
問題簡述:輸入隊(duì)伍數(shù)T,驗(yàn)題人數(shù)量n,AC了的隊(duì)伍數(shù)量m,第二行輸入n個(gè)每個(gè)驗(yàn)題人的代碼字節(jié)數(shù)。第三行輸入m個(gè)AC隊(duì)伍的代碼字節(jié)數(shù)。輸出格式為第一行為problem x(x=i+1000);第二行為輸出最短的驗(yàn)題人代碼字節(jié)數(shù)。第三行輸出最短選手代碼字節(jié)數(shù)。如果無AC隊(duì)伍則輸出N/A。

問題分析;實(shí)際上主要問題是將最短的驗(yàn)題人代碼字節(jié)數(shù)和最短選手代碼字節(jié)數(shù)求出來。我們定義兩個(gè)數(shù)組用來存儲(chǔ)輸入的字節(jié),通過冒泡排序?qū)⒆钚〉脑卣页鰜?,還有一個(gè)需要注意的是題目對(duì)輸出格式的要求。

ACc++代碼如下

#include<iostream>
using namespace std;
void bubble(int *a,const int n)
{
    for (int lunci = 1; lunci <= n-1; lunci++)
    {
        for (int i = 0; i < n - 1; i++)
        {
            if (a[i] > a[i + 1])
            {
                int t = a[i];
                a[i] = a[i+1];
                a[i+1] = t;             
            }
        }
    }
}
void shuchu(int count,int* a, int y, int z,int num)
{
        cout << "Problem "  << count + 1000 <<":"<< endl;       
        cout << "Shortest judge solution: " << y<< " bytes." << endl;
        if(num!=0)      cout << "Shortest team solution: " << z  << " bytes." << endl;
        else cout << "Shortest team solution: " <<"N/A" << " bytes." << endl;
}
int main()
{
    int T;
    int a[25];
    int b[550];
    int num[2];
    cin >> T;
        int count = 1;
        for (int i = 0; i < T; i++)
        {
            cin >> num[0] >> num[1];
            for (int j = 0; j < num[0]; j++)
            {
                cin >> a[j];
            }
            for (int j = 0; j < num[1]; j++)
            {
                cin >> b[j];
            }
            bubble(a, num[0]);
            bubble(b, num[1]);
            int y = a[0];
            int z = b[0];
            shuchu(count, a, y, z, num[1]);
            count++;
        }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 著名出題人小Q每次比賽后都會(huì)寫一份《賽題分析》,包含比賽概況、每題的參考算法以及一些統(tǒng)計(jì)數(shù)值。 對(duì)于一道題來說,小...
    李耳_9992閱讀 320評(píng)論 0 0
  • 著名出題人小Q每次比賽后都會(huì)寫一份《賽題分析》,包含比賽概況、每題的參考算法以及一些統(tǒng)計(jì)數(shù)值。 對(duì)于一道題來說,小...
    xcpooo閱讀 144評(píng)論 0 0
  • G - Problem G----hdu6292 著名出題人小Q每次比賽后都會(huì)寫一份《賽題分析》,包含比賽概況、每...
    九九詢閱讀 187評(píng)論 0 0
  • 這本書的第二部分講邏輯思考的三個(gè)關(guān)鍵方面:語言、激發(fā)、擴(kuò)展。 1.語言是邏輯的零部件 有邏輯指的是語言和文章能夠講...
    既安小姐閱讀 2,534評(píng)論 0 0
  • 從什么時(shí)候開始 重復(fù)他人的話 很多遍 害怕是假的 害怕過眼就忘 時(shí)常入夢(mèng) 分不清真實(shí)與虛幻 我不該走進(jìn)他 又一次走...
    周周周彥宏閱讀 150評(píng)論 0 0

友情鏈接更多精彩內(nèi)容