十进制整数转平衡三进制

求解原视频:平衡三进制 求赞!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;
}
相关推荐
Bert.Cai几秒前
Python集合简介
开发语言·python
Yzzz-F1 分钟前
2018-2019 ACM-ICPC, Asia Dhaka Regional ContestC[数论]
算法
tryCbest5 分钟前
Java和Python开发项目部署简介
java·开发语言·python
ZTLJQ5 分钟前
任务调度的艺术:Python分布式任务系统完全解析
开发语言·分布式·python
小Tomkk6 分钟前
怎么配置 Visual Studio Code 配置 C/C++
c语言·c++·vscode
阿里嘎多学长7 分钟前
2026-03-31 GitHub 热点项目精选
开发语言·程序员·github·代码托管
Frostnova丶7 分钟前
LeetCode 3474. 字典序最小的生成字符串
算法·leetcode·职场和发展
REDcker7 分钟前
Nagle 算法与 TCP_NODELAY、TCP_CORK 详解
网络·tcp/ip·算法
CheerWWW9 分钟前
C++学习笔记——枚举、继承、虚函数、可见性
c++·笔记·学习
小只笨笨狗~15 分钟前
解决objectSpanMethod与expand共存时展开后表格错位问题
开发语言·javascript·ecmascript