十进制整数转平衡三进制

求解原视频:平衡三进制 求赞!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 分钟前
【Java】代理模式
java·开发语言·代理模式
阿乾之铭3 分钟前
动态规划算法
算法·动态规划
菠菠萝宝5 分钟前
【代码随想录】第九章-动态规划(上)
算法·动态规划·01背包·完全背包·多重背包·上楼梯
DTDanteDong6 分钟前
从头再来!社招找工作——算法题复习九:动态规划
算法·动态规划
知识分享小能手8 分钟前
Html5学习教程,从入门到精通,HTML5 简介语法知识点及案例代码(1)
开发语言·前端·javascript·学习·前端框架·html·html5
Coco_926411 分钟前
Hot100 动态规划
算法·动态规划
muxue17811 分钟前
go:运行第一个go语言程序
开发语言·后端·golang
米饭好好吃.12 分钟前
【Go】Go wire 依赖注入
开发语言·后端·golang
闲猫12 分钟前
go 接口interface func (m Market) getName() string {
开发语言·后端·golang
可爱de艺艺13 分钟前
Go入门之struct
开发语言·后端·golang