因此,如果喵咪特徵連續一致,可以認為喵咪在運動。也就是說,如果特徵在持續幀裡出現,那麼它將構成特徵運動。比如,特徵在第2/3/4/7/8幀出現,那麼該特徵將形成兩個特徵運動2-3-4 和7-8。
現在,給定每一幀的特徵,特徵的數量可能不一樣。小明期望能找到最長的特徵運動。
輸入描述:
第一行包含乙個正整數n,代表測試用例的個數。
接下來的m行,每行代表一幀。其中,第乙個數字是該幀的特徵個數,接下來的數字是在特徵的取值;
比如樣例輸入第三行裡,2代表該幀有兩個貓咪特徵,<
1,1>和<
2,2>
所有用例的輸入特徵總數和<
100000
n滿足1≤n≤100000,m滿足1≤m≤10000,一幀的特徵個數滿足 ≤ 10000。
特徵取值均為非負整數。
輸出描述:
對每乙個測試用例,輸出特徵運動的長度作為一行
示例:
輸入18
2112
2211
1421
1222
2214
0011
1111
輸出3說明特徵<1,
1>在連續的幀中連續出現3次,相比其他特徵連續出現的次數大,所以輸出3
解析:
先看我們要儲存的資料結構:乙個二維座標,以及乙個表示連續次數的整型。
顯然一開始可能會使用二維陣列,但當我們要檢測連續性時,我們就需要變數整個二維陣列(即便裡面有些資料為0),顯然,這裡無法使用二維陣列來滿足我們的需求。
因此這裡使用的是map類,map類能提供乙個鍵值(key)以及乙個值值(value)。
因此我們可以用乙個map類物件(pair)表示座標。
顯然我們仍然缺少表達連續次數的整型,於是我們可以再建立乙個map類,用於存放座標以及連續次數(map,int>),這樣就可以解決資料訪問問題。
然後是如何檢測連續性問題。
由於存在清零操作(在連續斷開時需要重新計數),因此我們需要兩張map,一張記錄當前讀取的,一張記錄連續性。
**實現:
#include
#include
//呼叫map類
using
namespace std;
intmain()
//否則,則表示該元素是頭次出現或已斷開連續
else
//當前元素連續出現次數與最大連續出現次數比較
if(now[xy]
>max)
}//連續表pre清零,now表現在的是現仍連續的元素,與pre交換,作為下一幀的連續表
pre.
clear()
; pre.
swap
(now);}
cout << max<}}
程式設計題 特徵提取 位元組跳動 Golang
輸入描述 輸出描述 對每乙個測試用例,輸出特徵運動的長度作為一行 示例1 輸入18 2 1 1 2 2 2 1 1 1 4 2 1 1 2 2 2 2 2 1 400 1 1 1 1 1 1輸出3 說明特徵 1,1 在連續的幀中連續出現3次,相比其他特徵連續出現的次數大,所以輸出3 備註 如沒有長度...
特徵工程 特徵提取
特徵提取 將任意資料 如文字或影象 轉換為可用於機器學習的數字特徵 注 特徵值化是為了計算機更好的去理解資料 字典特徵提取 作用 對字典資料進行特徵值化 dictvectorizer.get feature names 返回類別名稱 from sklearn.feature extraction i...
顏色特徵提取
顏色特徵是在影象檢索中應用最為廣泛的視覺特徵,主要原因在於顏色往往和影象中所包含的物體或場景十分相關。此外,與其他的視覺特徵相比,顏色特徵對影象本身的尺寸 方向 視角的依賴性較小,從而具有較高的魯棒性。面向影象檢索的顏色特徵的表達涉及到若干問題。首先,我們需要選擇合適的顏色空間來描述顏色特徵 其次,...