在某次戰役中,DarkKnight 率軍出征,他的軍隊呈現矩形狀,有N排每排有M個士兵
並且使用古老黑暗孫子兵法的陣形,調整每橫排最高戰力的士兵(稱之為英雄)使得:
每橫排"英雄"的縱列位置,一定比上一排"英雄"的縱列位置還右邊
第0排:p p p p p p ←示意圖,紅色的p為英雄。
第1排:p p p p p p
第2排:p p p p p p
第3排:p p p p p p
現在,勇者你知道軍隊都符合這樣一個陣形,你要做的事情就是
替DarkKnight列出每橫排英雄的戰鬥力,好讓DarkKnight分析軍隊戰力
非常幸運的,這是一個互動題,請你先引入標頭檔#include "lib1360.h",然後就可以用這些函數了!
※你可以從這裡下載測試用的中繼檔,編譯時請連同該檔案一起編譯即可。
編譯指令範例:g++ 1360.c 1360_soldier.o -o 1360
「兵不厭詐,這是戰爭!」
「人無信就是畜生!」
其他限制:1≦N≦100000,1≦M≦1060000。另外,英雄的戰鬥力一定大於0且大於其他士兵,一排只有一位英雄。
這裡有一個絕對可以通過第一組測試資料的code,僅供參考。(以下code全形空白會造成compile error)
#include<stdio.h>
#include "lib1360.h"
main()
{
WarCraft();
int i,j,k,n=Find_n(),m=Find_m();
for( i = 0;i < n;i++)
{
for( j = k = 0;j < m;j++)
k>?=Hey_Man(i,j);
Report(k);
}
}
※2008/07/10 測試資料以及測資範圍修正 by Tmt。
※2008/07/10 時間限制修正 by Tmt,感謝 akira。
※2008/07/10 1360_soldier.h修正以防奧步 by ggm,感謝 Tmt。
※2008/07/10 使用GCC編繹似乎會抓不到.h,請使用G++編繹,by hallogameboy,感謝 sa072686。
※2008/07/10 互動程式庫修正,如今GCC也可以使用 by akira。
※2008/07/11 錯字以及範例程式修正 by akira,感謝 math120908。
※2008/09/11 士兵編號是從第0位開始喔~揪咪~ by hallogameboy,感謝 peter50216。
原TIOJ1360 / 快樂暑假營第一次練習比賽。Problem Setter:ggm
No. | Testdata Range | Score |
---|---|---|
1 | 0 | 25 |
2 | 1 | 25 |
3 | 2 | 25 |
4 | 3 | 25 |