Problem Description
题目大意:快乐数是由" 2 , 3 , 6 2,3,6 2,3,6"组成的数字,且不能包含其他的数字,求第 n n n个快乐数。
自信满满的写了个三进制…发发现样例都过不了,然后发现。。。跟三进制没啥关系。
枚举一下前几个快乐数,发现最后一位是 236 236 236循环,有第二位的数字开始算,第二位是 222333666 222333666 222333666,即为 3 1 3^1 31个 2 2 2、 3 1 3^1 31个 3 3 3、 3 1 3^1 31个 6 6 6循环,第三位的 222222222333333333666666666 222222222333333333666666666 222222222333333333666666666就是 3 2 3^2 32个 2 2 2、 3 2 3^2 32个 3 3 3、 3 2 3^2 32个 6 6 6循环…以此类推循环。
Accepted Code
#include
#define int long long
using namespace std;
const int N = 1e5 + 5;
int a[N] = {6, 2, 3, 6}, b[N];
signed main(){
ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
int n; cin >> n;
int base = 3, tot = 0;
while (n > 0){
int now = (n - 1) % base + 1;
now = (now + (base / 3) - 1) / (base / 3);
b[++tot] = a[now];
n -= base;
base *= 3;
}
for (int i = tot; i >= 1; i--) cout
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?