題目
題目描述
x 博士正在研究一種生物晶元,其邏輯密集度、容量都遠遠高於普通的半導體晶元。
博士在晶元中設計了 nn 個微型光源,每個光源操作一次就會改變其狀態,即:點亮轉為關閉,或關閉轉為點亮。
這些光源的編號從 1 到 nn,開始的時候所有光源都是關閉的。
博士計畫在晶元上執行如下動作:
所有編號為 2 的倍數的光源操作一次,也就是把 2 4 6 8 \cdots⋯ 等序號光源開啟;
所有編號為 3 的倍數的光源操作一次, 也就是對 3 6 9 \cdots⋯ 等序號光源操作,注意此時 6 號光源又關閉了。
所有編號為 4 的倍數的光源操作一次。
直到編號為 nn 的倍數的光源操作一次。
…x 博士想知道:經過這些操作後,某個區間中的哪些光源是點亮的。
輸入描述
輸入 3 個用空格分開的整數:n l r (l總結
完全平方數的因子個數為奇數,而操作次數奇數次的開關就是開著的,因子總是成對出現,因此只有相等的時候才會出現奇數個因子的情況。
光源總數為r-l+1(第乙個燈沒有被熄滅也沒有亮起來) 。
如果我們把 [ l , r ]這個去區間裡的所有數開根號,這些數必然 ∈ [sqrt(l), sqrt®] ,對於這各區間裡的每乙個整數,必有乙個完全平方數與之對應,
①因此完全平方數個數tot即為 (int)sqrt® - (int)sqrt(l),
②最後判斷l是不是完全平方數,如果是,tot++。
標頭檔案:#include
pow() 函式用來求 x 的 y 次冪(次方),x、y及函式值都是double型 ,其原型為:
double pow(double x, double y); ,pow()用來計算以x為底的y次方值,然後將結果返回。
值得注意的是,一幕資料非常大,就算一層for迴圈好像也會超時…
pass**
#include
#include
//using namespace std;
intmain()
藍橋杯 生物晶元
x博士正在研究一種生物晶元,其邏輯密集度 容量都遠遠高於普通的半導體晶元。博士在晶元中設計了 n 個微型光源,每個光源操作一次就會改變其狀態,即 點亮轉為關閉,或關閉轉為點亮。這些光源的編號從 1 到 n,開始的時候所有光源都是關閉的。博士計畫在晶元上執行如下動作 所有編號為2的倍數的光源操作一次,...
藍橋杯 生物晶元 思維
x博士正在研究一種生物晶元,其邏輯密集度 容量都遠遠高於普通的半導體晶元。博士在晶元中設計了 n 個微型光源,每個光源操作一次就會改變其狀態,即 點亮轉為關閉,或關閉轉為點亮。這些光源的編號從 1 到 n,開始的時候所有光源都是關閉的。博士計畫在晶元上執行如下動作 所有編號為2的倍數的光源操作一次,...
藍橋杯 生物晶元 Python
題目 x博士正在研究一種生物晶元,其邏輯密集度 容量都遠遠高於普通的半導體晶元。博士在晶元中設計了 n 個微型光源,每個光源操作一次就會改變其狀態,即 點亮轉為關閉,或關閉轉為點亮。這些光源的編號從 1 到 n,開始的時候所有光源都是關閉的。博士計畫在晶元上執行如下動作 所有編號為2的倍數的光源操作...