小明數(打表)
Description
小明比較喜歡研究各種各樣的數字,有一天他發現了一類數,並將這些數命名為“小明數”,下面是“小明數”的定義:
數字的二進位制由連續的k個1和連續的k-1個0組成。
比如:
1(二進位制為:1,k=1)
6(二進位制為:110,k=2)
120(二進位制為:1111000,k=4)
496(二進位制為:111110000,k=5)
現在給你一個數字n,求他所有的因子裡最大的“小明數”。
Input
第1行:一個數T,表示後面用作輸入測試的數的數量。(1 <= T <= 10^5)
第2 - T + 1行:每行1個數n。(1 <= n <= 10^5)
Output
共T行每行對應每個測試用例的結果
Sample Input 1
2 3 992
Sample Output 1
1 496
相關推薦
小明數(打表)
Description 小明比較喜歡研究各種各樣的數字,有一天他發現了一類數,並將這些數命名為“小明數”,下面是“小明數”的定義:數字的二進位制由連續的k個1和連續的k-1個0組成。比如:1(二進位制為:1,k=1)6(二進位制為:110,k=2)120(二進位制為:1111000,k=4)496(二進位制為
幸運數 (打表)
幸運數是波蘭數學家烏拉姆命名的。它採用與生成素數類似的“篩法”生成 。 首先從1開始寫出自然數1,2,3,4,5,6,.... 1 就是第一個幸運數。 我們從2這個數開始。把所有序號能被2整除的項刪除,變為: 1 _ 3 _ 5 _ 7 _ 9 .... 把它們縮緊,重新記序,為: 1 3 5
51nod 1082 與7無關的數 (打表預處理)
dao 空間 put ini spa 取消 memset blog ref 1082 與7無關的數 題目來源: 有道難題 基準時間限制:1 秒 空間限制:131072 KB 分值: 5 難度:1級算法題 收藏 關註 取消關註 一個正整數,如果它能被7整除,或
51nod 1062 序列中最大的數(打表預處理)
題目 with tdi .aspx input get 例如 ace mark 1062 序列中最大的數 題目來源: Ural 1079 基準時間限制:1 秒 空間限制:131072 KB 分值: 10 難度:2級算法題 收藏 關註 取消關註 有這
【51Nod - 1010 】只包含因子2 3 5的數 (打表,有坑越界)
題幹: K的因子中只包含2 3 5。滿足條件的前10個數是:2,3,4,5,6,8,9,10,12,15。 所有這樣的K組成了一個序列S,現在給出一個數n,求S中 >= 給定數的最小的數。 例如:n = 13,S中 >= 13的最小的數是15,所以輸出15。 Inpu
51Nod1010 只包含因子2 3 5的數(打表+ lower_bound)
lower_bound這個函式挺好用的。 #include<iostream> #include<algorithm> #include<cstring> using namespace std; typedef long long ll; c
***uva1225 數數字 (打表)
題目大意: 把前n(n<=10000) 個整數按順序寫在一起,123456789101112···· 數一數0~9個出現多少次(輸出10個數,分別是按0,1,2,3····9出現的次數) #include <iostream> #inclu
uva10006 Carmichael Numbers(卡邁克爾數+素數打表)
題意:判斷一個數是否是卡邁克爾數。 這題做的我真是峰迴路轉啊。。 首先本來是想看著《挑戰》複習下快速冪,結果這題根本用不到。 剛開始看到x^n≡x(mod n)老實說把我嚇了一跳,一個數餘n怎
K - JiLi Number (打表)
思路:總共到100000000000有 83個數,所以打表列出很方便。(一開始用大數做了好久,超時) #include<iostream> #include<cstdio> #include<cstring> using namespace std; t
藍橋杯 歷屆試題 幸運數(暴力打表)
第一個 pac for ans include inpu putchar desc 幸運數 Description 幸運數是波蘭數學家烏拉姆命名的。它采用與生成素數類似的“篩法”生成 。 首先從1開始寫出自然數1,2,3,4,5,6,...
Newcoder 156 B.托米的劃分(打表)
Description 歐洲人托米非常喜歡數字,他經常在空閒時玩下面的遊戲 對於一個數字 nnn, 托米會隨性選中一個數 ppp,$ (1< p \le n),將, 將,將 n $拆分成 u=
JiLi Number (打表)
思路:總共到100000000000有 83個數,所以打表列出很方便。(一開始用大數做了好久,超時) #include<iostream> #include<cstdio> #include<cstring> using namesp
51Nod1097 拼成最小的數(技巧排序)
排序規則: 兩個字串a,b。 如果ab<ba 那就a在b之前。 比如a=312,b=31. 31231<31312 所以312在31之前。 排完序就是按照規則輸出就行了。 #include<iostream> #include<algor
CodeChef - MRO Method Resolution Order(打表)
題意:有一種關係叫繼承,那麼繼承父類的同時也會繼承他的一個函式f,能繼承任意多個父類或不繼承,但不能繼承自己的子類。現在規定一個列表,這個列表必須以1~N的順序排列,並且父類不會排在子類後面,1含有一個函式f,有多少種可能使得這樣一個列表每個數都繼承f,取模1e9+7 思路:終於做出了一道DP(?)題。題目
找出陣列中第K個最小的數(快速排序)
問題描述:給定一個無序的陣列,從一個數組中找出第K個最小的數,例如,對於給定陣列序列{1,5,2,6,8,0,6},其中第4小的數為5。 演算法思路:採用快速排序,分而治之的思想,根據主元,每次Partiton以主元為軸,比它小的數在左邊,比它大的數在右邊,判
poj 3292 (打表)
題意:有類似4n+1的數(1,5,9,13,17.......),其中只有1和自己本身2個因數叫H-質數,而由2個H-質數乘積 得到的是H-合數,求0-n中,H-合數的個數。比如25=5X5 而5只有1和5這2個因數。 #include<s
藍橋杯 移動距離 (打表)
移動距離 X星球居民小區的樓房全是一樣的,並且按矩陣樣式排列。其樓房的編號為1,2,3... 當排滿一行時,從下一行相鄰的樓往反方向排號。 比如:當小區排號寬度為6時,開始情形如下: 1
HDU 6322(打表)
Problem D. Euler Function Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 524288/524288 K (Java/Others) Total Submission(s): 138
只包含因子2 3 5的數(51nod 思維 打表)
K的因子中只包含2 3 5。滿足條件的前10個數是:2,3,4,5,6,8,9,10,12,15。 所有這樣的K組成了一個序列S,現在給出一個數n,求S中 >= 給定數的最小的數。 例如:n = 13,S中 >= 13的最小的數是15,所以輸出15。 Input 第1行:一個數T
HDU 4864 Task(貪心) (機器完成目標任務, 兩個權值, 小範圍打表)
Task Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 7171 Accepted Submiss