題意:給乙個數,求最大的乙個因子,這個因子還要滿足不能有平方數是他的因子。
我的解法幾乎是暴力的,應該可以用數學的方法不暴力(或者說不那麼「暴力」)求出來。
我的解法是:
#include#includeview code#include
#include
#include
#include
using
namespace
std;
#define max(x,y) (((x)>(y)) ? (x) : (y))
#define min(x,y) (((x) < (y)) ? (x) : (y))
#define abs(x) ((x)>0?(x):-(x))
const
long
long inf = 0x7fffffff
;const
long
long n=1000000+10
;long
long
a[n];
bool check(long
long
x) }
return1;
}int
main()
}sort(a,a+p);
for(long
long i=p-1; i>=0; i--)
}
後來在網上學習了質因子分解的解法。 思路是從2開始,乙個個試因子,並且把n中的i因子抽離幹,進行到n==1或者i*i>n 。
**
#includeusingview codenamespace
std;
intmain()
}cout
return0;
}
隨筆 邀請賽前訓 Duff and Meat
題目的意思是給你多組清單,每組包含所需食物的數量,和當天食物的單價,可以囤積食物。求花最少的錢完成清單。解決這道題目的策略是從頭到尾掃瞄一遍這些清單,再遇到更便宜的 前都用之前最便宜的 買食物,再更新當前最便宜的 以此類推下去。陣列a 代表各天地食物需求 陣列b 代表各天地食物單價 變數cheap代...
2018南昌邀請賽網路賽d題
剛開始看到此提時也沒想到dp 但是仔細一思考可以發現確實是 我們只要單獨處理第一位數 剩下的符號和數字看成乙個物品 進行類似揹包的dp即可 首先預處理所有火柴和符號 根據輸入的總火柴進行一次dp即可 include include include includeusing namespace std...
第36屆北京邀請賽D題 bupt199
題意 現在要打怪,白天和晚上打,怪物受到的損害不一樣,白天為pd,晚上為pn。而打了一次怪後,在後面的t小時內不能再打,現在有n天,每天的白天和晚上時間t1,t2不一樣,求怪物受到的最大損害?n 1000,t 100,t1,t2在32位表示的範圍內 方法一 這題顯然是dp,因為t1,t2太大,所以不...