十进制整数转平衡三进制

求解原视频:平衡三进制 求赞!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;
}
相关推荐
聆风吟º2 分钟前
【Python编程日志】Python入门基础(二):行 | 缩进 | print输出
开发语言·python·print··缩进
lsx2024065 分钟前
Servlet 点击计数器
开发语言
卷心菜狗7 分钟前
Python进阶-闭包与装饰器
开发语言·python·学习
MegaDataFlowers10 分钟前
3.无重复字符的最长子串
算法
凯瑟琳.奥古斯特10 分钟前
C++变量命名进阶技巧
开发语言·c++
不羁的fang少年12 分钟前
Netty网络模型
java·开发语言
人道领域16 分钟前
【LeetCode刷题日记】20.有效的括号
算法·leetcode·职场和发展
生信研究猿17 分钟前
#P3492.第1题-基于决策树预判资源调配优先级
python·算法·决策树
贾斯汀玛尔斯18 分钟前
每天学一个算法--缓存淘汰策略(LRU / LFU · 结构与复杂度)
算法·缓存
大熊背22 分钟前
一套为硬件加速设计的经典边缘检测流水线(一)----边缘细化原理
人工智能·算法·计算机视觉·梯度计算