題目描述
不同的雪花往往有不同的形狀。在北方的同學想將雪花收集起來,作為禮物送給在南方的同學們。一共有n個時刻,給出每個時刻下落雪花的形狀,用不同的整數表示不同的形狀。在收集的過程中,同學們不希望有重複的雪花。你可以從任意a時刻開始,在b時刻停止。a到b時刻中間的雪花也都將被收集。他們希望收集的雪花最多。
輸入第一行乙個正整數n;第2行到第n+1行表示n個時刻雪花的形狀。
輸出最多能收集雪花的數量。
5樣例輸出1 2 3 2 1
3提示
n≤1e6,xi≤1e9
【題解】
這個題目其實用的是一種的hash方式,其實就是我們常用的離散化操作。
1、另外乙個陣列存放相同資料,然後進行排序。
2、因為大小相同可以看成乙個數,所以相同的話,可以用lower_bound來寫,因為是大於等於某個數,等於可以看成對應的大小關係。
3、然後進行雙指標方法來跑最大區間的不同種類的個數。
【**】
1 #include2 #include3 #include4 #include5view codeusing
namespace
std;
6 typedef unsigned long
long
ull ;
7const
int n = 1e6+10;8
const
int m = 5e6+10;9
const ull base = 131;10
inta[n],c[n],h[m],n;
11ull b[n];
12void
dispersed()17}
18int
main()
1933 printf("
%d\n
",res );
34return0;
35 }
137 雪花雪花雪花 hash
有n片雪花,每片雪花由六個角組成,每個角都有長度。第i片雪花六個角的長度從某個角開始順時針依次記為ai,1,ai,2,ai,6 因為雪花的形狀是封閉的環形,所以從任何乙個角開始順時針或逆時針往後記錄長度,得到的六元組都代表形狀相同的雪花。例如ai,1,ai,2,ai,6 和ai,2,ai,3,ai,...
To Heart 題解 收集雪花
題目描述 不同的雪花往往有不同的形狀。在北方的同學想將雪花收集起來,作為禮物送給在南方的同學們。一共有n個時刻,給出每個時刻下落雪花的形狀,用不同的整數表示不同的形狀。在收集的過程中,同學們不希望有重複的雪花。你可以從任意 a時刻開始,在 b時刻停止。a到 b時刻中間的雪花也都將被收集。他們希望收集...
演算法收集 Hash解析 01 hash定義
hash雜湊演算法詳細解析 一 本文詳細描述了hash演算法的通用模式,在這個基礎上對目前作為標準的幾種主要hash演算法進行了一些分析 md5,ripemd系列,sha系列,tiger以及剛加入到標準不久的whirlpool。給出了部分演算法的 1 hash定義 傳統hash函式的定義 乙個has...