列印鋸齒矩陣 計蒜客

2021-09-09 09:09:38 字數 1440 閱讀 4398

鋸齒矩陣是指每一行包含的元素個數不相同的矩陣,比如:

3 5 2 6 1

2 3 4

1 6 2 7

讀入若干對整數 (x,

y)

(x,y)

(x,y

),表示在第 x

xx 行的末尾加上乙個元素 yyy。

輸出最終的鋸齒陣列。初始時矩陣為空。

輸入格式

第一行輸入兩個整數 n,m

(1≤n

,m

≤10000

)n,m(1 \leq n,m \leq 10000)

n,m(1≤

n,m≤

1000

0),其中 n

nn 表示鋸齒陣列的行數,m

mm 表示插入的元素總數。

接下來一共 m

mm 行,每行兩個整數 x,y

(1≤x

≤n,0

≤y

≤10000

)x,y(1 \leq x \leq n, 0 \leq y \leq 10000)

x,y(1≤

x≤n,

0≤y≤

1000

0),表示在第 x

xx 行的末尾插入乙個元素 yyy。

輸出格式

一共輸出 n

nn 行,每行若干個用空格分隔的整數。

如果某行沒有任何元素,則輸出乙個空行。

樣例輸入

3 12

1 32 2

2 32 4

3 13 6

1 51 2

1 63 2

3 71 1

樣例輸出

3 5 2 6 1

2 3 4

1 6 2 7

解:

採用向量陣列vector< int >來儲存每行的元素,不會造成大量的空間浪費。

但一開始就要開闢最大行數得陣列空間。

使用多維向量vector< vector< int > > 也行。

但向量陣列表達的更直觀些。

下方**使用向量陣列。

**:

#include

"iostream"

#include

"vector"

using

namespace std;

intmain()

for(

int i=

0;i) cout<}return0;

}

計蒜客 列印鋸齒矩陣

鋸齒矩陣是指每一行包含的元素個數不相同的矩陣,比如 3 5 2 6 1 2 3 4 1 6 2 7 讀入若干對整數 x,y x y 表示在第 x x 行的末尾加上乙個元素 y y。輸出最終的鋸齒陣列。初始時矩陣為空。第一行輸入兩個整數 n,m 1 leq n,m leq 10000 n,m 1 n,...

計蒜客習題2 列印鋸齒矩陣(vector)STL

問題描述 鋸齒矩陣是指每一行包含的元素個數不相同的矩陣,比如 3 5 2 6 1 2 3 4 1 6 2 7 讀入若干對整數 x,y 表示在第 x 行的末尾加上乙個元素 y。輸出最終的鋸齒陣列。初始時矩陣為空。輸入格式 第一行輸入兩個整數n,m 1 n,m 10000 其中 n 表示鋸齒陣列的行數,...

計蒜客 矩陣翻轉

曉萌最近在做乙個翻轉的應用,你可能也知道,其實是由乙個個的點組成的。於是,曉萌想先做乙個可以翻轉矩陣的程式,來解決他問題的核心部分。輸入第一行包括由空格分開的整數 m,n,t 0m,n,t 0m 20 0 tt t的值為 000 或 11 1。其中 mmm 和 nn n分別表示待處理矩陣的行數與列數...