F - 只包含因子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。

Input

第1行:一个数T,表示后面用作输入测试的数的数量。(1 <= T <= 10000) 
第2 - T + 1行:每行1个数N(1 <= N <= 10^18)

Output

共T行,每行1个数,输出>= n的最小的只包含因子2 3 5的数。

Sample Input

5
1
8
13
35
77

Sample Output

2
8
15
36
80

 

几个月没打ACM了 ,第一眼看到这个题  咦 要数论解方程吗,然后在纸上一顿推公式,

推到一半 发现 emmmmmm   2^64>1e18    3^64>1e18  5^64>1e18
所以 在 1e18内是 2  3 8 因子的数字count<64*64*64

所以可以直接暴力 然后二分找出大于等于n的值就OK了  时间完全不是问题

 

#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
ll num[30000];//注意数据范围
int main()
{
    int t,cnt=0;
    ll n;
    for(ll i=1;i<=1e18+1000;i*=2)
    {
        for(ll j=1;i*j<=1e18+1000;j*=3)
        {
            for(ll k=1;i*j*k<=1e18+1000;k*=5)
            {
                num[cnt++]=i*j*k;
            }
        }
    }
    sort(num,num+cnt);
    scanf("%d",&t);
    while(t--)
    {
        scanf("%lld",&n);
        int ans=lower_bound(num,num+cnt,n)-num;
        if(ans)//特别的 如果ans=0  即num[ans]为1  因子并没有2 3 5 需要特判一下
         cout<<num[ans]<<endl;
        else
            cout<<2<<endl;
    }
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Fama-French五因子模型的Python代码可以包括以下几个步骤: 1. 导入所需的库: ```python import numpy as np import pandas as pd ``` 2. 定义标准化函数: ```python def standardize_z(dt): mean = dt.mean() # 截面数据均值 std = dt.std() # 截面数据标准差 return (dt - mean) / std ``` 3. 标准化因子数据: ```python factors_standardize = standardize_z(X) # 标准化因子数据 ``` 4. 计算过度矩阵S: ```python M = (factors_standardize.shape\[0\] - 1) * np.cov(factors_standardize.T.astype(float)) D, U = np.linalg.eig(M) # 获取特征值和特征向量 U = np.mat(U) # 转换为np中的矩阵 d = np.mat(np.diag(D ** (-0.5))) # 对特征根元素开(-0.5)指数 S = U * d * U.T # 获取过度矩阵S ``` 5. 获取对称正交矩阵: ```python factors_orthogonal_mat = np.mat(factors_standardize) * S # 获取对称正交矩阵 factors_orthogonal = pd.DataFrame(factors_orthogonal_mat, columns=X.columns, index=factors_standardize.index) ``` 6. 计算正交化后的因子相关性: ```python F_o = factors_orthogonal.fillna(0).corr() # 正交化后的因子相关性 ``` 7. 计算正交化前的因子相关性(可选): ```python F = X.fillna(0).corr() # 正交化前的因子相关性 ``` 请注意,上述代码中的X是指原始因子数据,你需要根据实际情况进行替换。此外,代码中的其他变量和函数可能需要根据你的具体需求进行调整。 #### 引用[.reference_title] - *1* [Fama-French五因子模型](https://blog.csdn.net/m0_55389447/article/details/117604999)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Fama-French五因子模型实用攻略](https://blog.csdn.net/weixin_42219751/article/details/95627875)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [fama-french五因子模型的python实现](https://blog.csdn.net/weixin_42642232/article/details/122249462)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值