今晚的兩道 bc

2022-04-06 01:07:55 字數 1604 閱讀 2400

第一道題  beautiful palindrome number

,簡單組合計數問題,手算打表就好~大概十五分鐘左右搞定【第一次 提交竟然 wa了一次 有乙個小小的坑在那。。。。

/*********************************

author: jusonalien

email : [email protected]

school: south china normal university

origin:

*********************************/

#include #include #include #include #include #include #include #include using namespace std;

int ans[7] = ;

int t;

int main()

return 0;

}

第二道題,operation the sequence

一開始想到的就是 線段樹啥的,尼瑪乙個人在那想啊想啊,想到蛋碎 都沒想到究竟要怎麼操作,突然間想到能不能到時反過來 遞推過去?這麼一想會不會很傻x?會不會t啊?尼瑪 連具體方法都沒想好,就擔心t了,,簡直太低能了,後來lpt好像也在做這個比賽,她在q上吐槽道說她剛去圖書館水過第一題後圖書館就閉館了,然後我和她討論了一下第二題,聊著聊著就聊到了遞推,然後就她說有個詞叫做離線。。。哎原來這就是離線?然後 我就開始寫 ,為了能夠保證到時能夠倒著推過去,就用stack咯,,結果還沒寫完就out of submit time了,沒辦法交了,,,rating就這麼跑了囧rz

晚上出去散了一下步之後,回來接著寫那道題目,第一次t了一次,,原來我天真地用了快速冪,其實不用快速冪更快,然後答案沒有設為long long 又wa 了一發,然後 亂搞了幾次後就ac了

/*********************************

author: jusonalien

email : [email protected]

school: south china normal university

origin:

*********************************/

#include #include #include #include #include #include #include #include #include using namespace std;

const int mod = 1e9 + 7;

int n,m,pow;

stackop;

inline int fun_1(int o)else

}inline int fun_2(int o)

inline int solve(int o,int q)

int query(int o)

long long ans = o;

for(int i = 1;i <= pow;++i)

ans = (ans*ans)%mod;

return ans;

}int t;

int main()

}return 0;

}

兩道baidu試題

1 簡述 n個空間,存放a到a n 1的數,位置隨機且數字不重,a為正且未知,現在第乙個空間的數被誤設定為 1。說明 已經知道被修改的數不是最小的。例子 n 6,a 2,原始的串為5,3,7,6,2,4。現在被別人修改為 1,3,7,6,2,4。現在希望找到5。思路 充分利用等差數列性質。法一 開一...

兩道筆試題

昨天一朋友找工作,碰到兩道演算法筆試題,都是當於鍊錶操作的.原題具體的還原不過來了,不過大致是 1.有一單鏈表,找出最後第m個節點.昨天看到問題時,想到了小學應用題 汽車過山洞,假如這個汽車開著開著,等到車頭剛要出山洞,車尾離山洞出口也有一段距離嘛.這樣,這個題方法出來了 cpp node find...

暴力解題兩道

求 n n n 的位數。n nn 不大於 1e7。解 1 將 1,n 1,n 1,n 中的整數逐個相乘。每當中間結果大於10時,不斷地將中間結果除以10並記下除以10的次數。保證中間結果小於10即可。最蠢最暴力的辦法。考慮到 n 最大為 1e7 應該用 int64來儲存中間結果。時間複雜度為o nl...