c題:3s
鴿子數字由以下過程定義:從任何正整數開始,將數字替換為其數字的十進位制數字的平方和,並重複該過程,直到該數字等於1。如果不能,則這個數字不是鴿子數。
輸入:第一行q,代表詢問的個數(q<=100000)
接下來q行,每行給出乙個數k,問第k個鴿子數。(k<150000)
輸入示例:21
2輸出示例:17
題解:如果乙個數不是鴿子數,那麼迴圈節長度為 8,顯然打表至k=150000即可,關鍵是要判到vis陣列開多大防tle
#include using namespace std;
int f[1000000],vis[81*15],t;
bool check(int x)
if(vis[t]==0)vis[t]=1;//未vis過就打上標記
else//如果vis過了就表示迴圈了
if(t==1)return true;//能夠到1就是鴿子數
else return false;//不能的話就不是
x=t;//然後x記為t
}}void init()
int main()
return 0;
}
d題:免費送氣球
已知一開始有乙個空序列,接下來有q次操作,每次操作給出type、first和second三個值。
當type為1時,意味著該操作屬於第一種操作:往序列尾部新增first個second數。
當type為2時,意味著該操作屬於第二種操作:查詢序列中第first小至第second小的數值之和(一共有(second - first + 1)個數被累加),並將結果對1000000007取模後輸出。
## input
單組資料
第一行乙個q(1 <= q <= 1e5),代表q次操作。
接下來有q行,每行包含三個整數type、first和second;其中1 <= type <= 2。當type等於1時,0 <= first,second < 1e9。當type等於2時,1 <= first <= second,且first和second均不大於目前已新增進序列的數的數量。
## output
對於每次操作二,將結果對1000000007取模後輸出。
## sample input
6 1 5 1
1 6 3
2 2 5
2 4 8
1 2 2
2 4 8
## sample output
4 11
9
當然只建一棵也是可以的,結點開結構體同時存和值與數量即可
#include using namespace std;
typedef long long ll;
typedef pairp;
const int inf = 0x3f3f3f3f;
const ll linf = 0x3f3f3f3f3f3f3f3f;
const ll mod = 1e9 + 7;
const double pi = acos(-1.0);
const double eps = 1e-10;
const int n = 1e5 + 5;
int q, n, _n, type[n];
p p[n];
ll w[n], num[n << 2], sum[n << 2];
mapmap;
void init()
_n = 1;
while (_n < n) _n <<= 1;
memset(num, 0, sizeof num);
memset(sum, 0, sizeof sum);
}void add(int pos, ll k, ll val, int l = 0, int r = _n, int t = 0)
ll query(ll &k, int t = 0)
if (t + 2 > _n)
return (query(k, t << 1 | 1) + query(k, t + 1 << 1)) % mod;
}int main()
init();
for (int i = 0; i < q; ++i)
else
} return 0;
}
廣工校賽覆盤AB題
題面 zsl 和hzy 來到了臭臭城堡,打算挑戰臭臭城堡的大魔王hyz,大魔王hyz設定了這樣的乙個挑戰 1.zsl 和hzy兩個人各自來到一間密室,期間兩人無法以任何形式交流 2.大魔王hyz會隨機在兩個人的腦海裡各傳送乙個數字,0或者是1 3.zsl 和 hzy 需要猜對這倆個數字才算通關,但是...
幾何 迴旋星空 廣工校賽
雖然是幾何題,但是集合的部分很少 題 意 在n個點中,有多少組三個點滿足dis a,b dis b,c 思 路 如果暴力列舉三個點,顯然會超時。這時候,從題目條件出發。題目只要求兩邊相等的角的個數,那麼考慮每個點作為角的頂點時,其他點與這個點的距離。所有相等的邊中任取兩條,c n,2 include...
廣工校賽 LCS 完美串
愛美之心人皆有之,gg也不例外。所以gg他對於完美串有一種熱衷的愛。在gg眼中完美串是乙個具有無比魅力的01子串。這個子串有之其魅力之處,對它取反後水平翻轉,它又和它原來的一模一樣。這就是gg熱愛它的原因。但是世上並不是所有的01串都是完美串,所以gg下定決心想改造01串,使所有的01串都成為完美串...