十进制整数转平衡三进制

求解原视频:平衡三进制 求赞!100赞买个乒乓球拍!_哔哩哔哩_bilibili

题目: 上海市计算机学会竞赛平台 | YACS

求解程序:

cpp 复制代码
using namespace std;
#include <iostream>
#include <cstring>
 
 
string work(int n)
{
	if(n==0)return "";
	
	if( n%3 == 2 || n%3 == -1 )return work((n+1)/3)+ "T";
	else if( n%3 == 1 || n%3 == -2 )return work((n-1)/3)+"1";
	else return work(n/3)+"0";
}
 
int main()
{
	int n;
	cin >> n;
	string s_str=(n==0)?"0":work(n);
	cout << s_str <<endl;
	return 0;
}
相关推荐
人道领域几秒前
【LeetCode刷题日记】1047:双栈法与双指针法巧妙消除相邻重复字符
java·算法·leetcode·职场和发展
Via_Neo几秒前
Bash Game
开发语言·bash
切糕师学AI几秒前
布隆过滤器(Bloom Filter)技术详解
数学·算法
礼拜天没时间.6 分钟前
力扣热题100实战 | 第33期:搜索旋转排序数组——二分查找的变体艺术
算法·leetcode·职场和发展·旋转数组·搜索旋转排序数组
Jenlybein20 分钟前
用 uv 替代 conda,速度飙升(从 0 到 1 开始使用 uv)
后端·python·算法
400分20 分钟前
LangChain 与大模型技术全链路详解
算法·架构
电科一班林耿超22 分钟前
第 14 课:动态规划(DP)—— 算法思想的巅峰,面试的终极分水岭
数据结构·算法·动态规划
菜菜的顾清寒22 分钟前
C++面试题自用-持续更新
开发语言·c++
lihao lihao25 分钟前
Linux文件与fd
java·linux·算法
Navigator_Z28 分钟前
LeetCode //C - 1026. Maximum Difference Between Node and Ancestor
c语言·算法·leetcode