修改过----AtCoder Beginner Contest 190 D Staircase Sequences(唯一分解求因子数)
D Staircase Sequences
题意:
给你一个和sum。问你是否可以拆成公差为1的等差数列。
求:
最多可以拆成多少个。
思路:
- 这题猜出来的。就是求因数个数。(
偶数的因子不可以
) - 最后记得答案*2.
反思:
2020-1-31发现,猜得不严谨。有点对不起读者,所以特地来补充完整。
题目要求:
- 等差数列且前n项和为sum
- 公差d=1
过程
- 假设区间的左右端点是a和b。那么就可以表示成 [ a , b ] [a,b] [a,b]
- s u m = ( b − a + 1 ) ( a + b ) 2 sum = \frac{ (b-a+1)(a+b) }{2} sum=2(b−a+1)(a+b) (项数* (首项+末项) 等差数列求和公式)
- 为了满足题目要求2,那么 ( b − a + 1 ) (b-a+1) (b−a+1) 和 ( a + b ) (a+b) (a+b) 不能同时都是偶数
- (一个代表区间长度,一个代表首项+末项,eg:1,2,3,4,无论怎样都构造不出来)又或者(2,3,4,5)
- 题目问的是:有多少种可能。那么不就是求sum有多少个奇因子吗
AC
/*
皮卡丘冲鸭!
へ /|/\7 ∠_// │ / /│ Z _,< / /`ヽ│ ヽ / 〉Y ` / /イ● 、 ● ⊂⊃〈 /() へ | \〈>ー 、_ ィ │ /// へ / ノ<| \\ヽ_ノ (_/ │//7 |/>―r ̄ ̄`ー―_
*/
#include <iostream>
#include <bits/stdc++.h>
#define For(i,x,y) for(int i=(x); i<=(y); i++)
#define fori(i,x,y) for(int i=(x); i<(y); i++)
#define rep(i,y,x) for(int i=(y); i>=(x); i--)
#define mst(x,a) memset(x,a,sizeof(x))
#define pb push_back
#define sz(a) (int)a.size()
#define mp make_pair
#define fi first
#define se second
#define debug(a) cout << #a << ": " << a << endl
using namespace std;
typedef long long ll;
typedef pair<int,int>pa;
typedef pair<ll,ll>pai;
const int N = 2e5+10;
const int M = 1e5;
int main()
{ios::sync_with_stdio(0); cin.tie(0); cout.tie(0);ll x;cin>>x;vector<int>prime, prime_num;ll ans = 1;for(int i = 2; i <= x/i; i ++ ){if(x%i==0){prime.pb(i);ll cnt = 0;while(x%i==0)x/=i,cnt++;// debug(i);// debug(cnt);// if(i!=2)ans+=cnt*2;if(i!=2) ans*=(cnt+1);}}if(x>2)ans*=2;// ans+=2;cout<<ans*2<<endl;return 0;
}
修改过----AtCoder Beginner Contest 190 D Staircase Sequences(唯一分解求因子数)相关推荐
- AtCoder Beginner Contest 190 D - Staircase Sequences
D - Staircase Sequences https://atcoder.jp/contests/abc190/tasks/abc190_d 分解因数,枚举 #include<bits/s ...
- AtCoder Beginner Contest 190 E.Magical Ornament
AtCoder Beginner Contest 190 E.Magical Ornament 题目链接 这场我觉得 E E E 要比 F F F 难点,因为 E E E 比较难看出来是 BFS+状压 ...
- AtCoder Beginner Contest 190 A~D 题解
ABC190 A~D [A - Very Very Primitive Game](https://atcoder.jp/contests/abc190/tasks/abc190_a) 题目大意 输入 ...
- AtCoder Beginner Contest 172 E - NEQ(二项式反演)
AtCoder Beginner Contest 172 E - NEQ 题意: 求满足下列条件的长度为 NNN且包含 [1,M][1, M][1,M]范围内整数的序列 A1,A2,⋯,ANA_1, ...
- AtCoder Beginner Contest 234 G - Divide a Sequence
AtCoder Beginner Contest 234 G - Divide a Sequence 题目 给定一个长度为N的序列,任意的将其划分为任意长度大于零的若干个子串,对于任意一个子串SiS_ ...
- AtCoder Beginner Contest 202 D - aab aba baa(组合计数,字典序)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Problem 有 AAA 和 aaa,BBB 个 bbb ,可以使用这 A+BA+BA+B 个字符任 ...
- AtCoder Beginner Contest 197 题解(A ~ F)
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Rotate B - Visibility C - ORXOR D - Opposite ...
- AtCoder Beginner Contest 198 (A ~ F)题解
目录 A. Div B. Palindrome with leading zeros C. Compass Walking D. Send More Money E. Unique Color F. ...
- AtCoder Beginner Contest 215 G - Colorful Candies 2
AtCoder Beginner Contest 215 G - Colorful Candies 2 有n个糖果,每个糖果有着一个颜色a[i],每次拿k个糖果期望拿到E(x)个不同颜色的糖果,求出k ...
最新文章
- 注意力机制YYDS,AI编辑人脸终于告别P一处而毁全图
- 什么是故事板?(故事图、Storyboard)(软件显示效果的视觉草图,用于视频创作和广告设计,表达作者的创意)
- rxjava 被观察者_RxJava:从未来到可观察
- HarmonyOS硬件创新合作伙伴,【HarmonyOS】HarmonyOS智能硬件开发学习指南 - HDC2020
- 韩春雨要“翻案”?最新研究发现NgAgo具有DNA编辑能力
- 在MySQL中当有多个索引时 你知道MySQL是如何选择索引的吗 ???
- Phinx - 数据库迁移及版本控制介绍(内含中文文档翻译)
- IntelliJ IDEA 12 中用 Maven + Jetty 来开发Web项目
- 剑指offer面试题[16]-反转链表
- 30. Element parentNode 属性
- opencv4.3.0+Visual Studio 2019环境配置
- Latex 安装包 metropolis
- 微信小程序实现客服默认自动回复功能
- PPT到WORD的组合图片复制
- 试用74LS194加74151设计一个从Q0端输出100111序列信号的序列信号发生器. 要求电路能自启动, 且越简单越好
- PHP curl实现GET请求
- 第八届中国大学计算机设计大赛,2015年(第八届)中国大学生计算机设计大赛.PDF...
- Sketch for mac(专业矢量绘图设计软件)
- 六大设计原则 (SOLID)
- 关于海外问卷调查的一些问题
热门文章
- MySQL使用Mycat实现分库分表-读写分离
- 哈迪-温伯格平衡(Hardy-Weinberg equilibrium)法则
- C 进阶内存四区(3)
- 放弃VMware改投VirtualBox的五个理由
- 带掩码的自编码器MAE在各领域中的应用总结
- 【大家说英语】Work Rob Gives a Speech
- [codeforces 1312A] Two Regular Polygons 整除
- 用支付宝和微信可以直接跳转拉起支付,API搭建比较方便第三方支付接口首选杉德比较靠谱,
- 人肉搜索酝酿灰色产业:首批淘客月入万元
- vuex-persist实现vux持久化