總結:人菜思維僵硬.jpg…做筆試感覺智商嚴重下降…以後得寫點正常的agc題之類的了…
t1
題目大意:給出長度為n的排列,要求按順序插入排序二叉樹,問經過根節點的最長路徑長度。奇怪的做法:n
<=1
e5
n<=1e5
n<=1
e5
把陣列進行排序後,把id給拿出來。
例如 ai=
[5,3
,2,1
,6,7
,4
]a_i=[5,3,2,1,6,7,4]
ai=[5
,3,2
,1,6
,7,4
]排序後得到bi=
[4,3
,2,7
,1,5
,6
]b_i=[4,3,2,7,1,5,6]
bi=[4
,3,2
,7,1
,5,6]bi
b_ibi
為第i小的數的id。那麼分治進行處理,b
ib_i
bi的左邊的最小數即為左兒子,右邊最小即為右兒子。
這個過程用st表處理即可。時間複雜度o(n
logn
)o(nlogn)
o(nlog
n)。c++**:
#include
#include
#include
#include
#include
using
namespace std;
#define ll long long
struct data_ppot[
100005];
int n,f[
100005][
25],root;
double t,lenn;
bool
cmp(data_p a,data_p b)
intfnd
(int l,
int r)
intmain()
sort
(pot+
1,pot+n+
1,cmp)
; t=
1.0*
log(
1.0*n)
/log
(2.0);
for(
int i=
1;i<=n;i++
)for
(int i=
1;i<=t;i++)}
printf
("%d"
,fnd(1
,root-1)
+fnd
(root+
1,n)+1
);return0;
}
t2
題目大意:n個男生,m個女生,選出k個人的方案數,要求至少選3個男生,2個女生。列舉選的男生數量,然後得到選女生的數量,直接組合數算一算即可…n ,m
<
=1000
n,m<=1000
n,m<=1
000
c++**:
#pragma gcc optimize(2)
#include
#define ll long long
#define maxn 1000005
#define inf 1e9
#define pb push_back
#define rep(i,a,b) for(int i=a;i<=b;i++)
#define per(i,a,b) for(int i=a;i>=b;i--)
using
namespace std;
inline
intread()
while
(c<=
'9'&&c>=
'0')
return w==
1?x:
-x;}
ll fac[maxn]
,inv[maxn]
,n,k;
const ll mod=
1000000007
;inline ll pw
(ll a,ll b)
return ans;
}inline ll c
(int n,
int m)
intmain()
cout
}
中興通訊筆試題
中興筆試題 4.static有什麼用途?請至少說明兩種 static關鍵字是c,c 中都存在的關鍵字,它主要有三種使用方式,其中前兩種只指在c語言中使用,第三種在c 中使用 c,c 中具體細微操作不盡相同,本文以c 為準 from 1 區域性靜態變數 2 外部靜態變數 函式 3 靜態資料成員 成員函...
騰訊筆試題解
1,把整數分成256m段,每段可以用64位整數儲存該段資料個數,256m 8 2g記憶體,先清0 2,讀10g整數,把整數對映到256m段中,增加相應段的記數 3,掃瞄256m段的記數,找到中位數的段和中位數的段前面所有段的記數,可以把其他段的記憶體釋放 4,因中位數段的可能整數取值已經比較小 如果...
2014中興筆試試題
1.c語言中的volatile關鍵字 volatile關鍵字是一種型別修飾符,用它宣告的型別變數表示可以被某些編譯器未知的因素更改,比如 作業系統 硬體或者其它執行緒等。遇到這個關鍵字宣告的變數,編譯器對訪問該變數的 就不再進行 優化,從而可以提供對特殊位址的穩定訪問。2.訪問越界了 定義的陣列是a...