hdu--5670--Machine (模拟三进制)

[2016.7.Test1] T1 三进制异或 三进制异或 (xor.c/pas/cpp limit 1s 128M)【问题描述】Leego 买到了一台不同寻常的计算机,它是三进制的! 在一番探索之下,Leego 发现了这个计算机的一个特性……它的异或(XOR)运算。 我们知道二进制的异或运算的结果就是把两个加数的二进制形式的每一位分别相加,不要进位,然后逐位模 2 得到的二进制数就是答案,如12(1100) XOR 10(1010 阅读详情


Machine

 
 Accepts: 580
 
 Submissions: 1890
 Time Limit: 2000/1000 MS (Java/Others)
 
 Memory Limit: 65536/65536 K (Java/Others)
问题描述
有一个机器,它有 m (2\leq m\leq 30)m(2≤m≤30) 个彩灯和一个按钮。每按下按钮时,最右边的彩灯会发生一次变换。变换为:

1. 如果当前状态为红色,它将变成绿色;

2.如果当前状态为绿色,它将变成蓝色;

3.如果当前状态为蓝色,它将变成红色,并且它左边的彩灯(如果存在)也会发生一次变换。

初始状态下所有的灯都是红色的。
询问按下按钮 n (1\leq n< {2}^{63})n(1≤n<2​63​​) 次以后各个彩灯的颜色。
输入描述
输入包含多组数据. 第一行有一个整数T (1\leq T\leq 15)T(1≤T≤15), 表示测试数据的组数. 对于每组数据:
唯一的一行包含2个整数 m (2\leq m\leq 30)m(2≤m≤30) 和 n (1\leq n< {2}^{63})n(1≤n<2​63​​) 。
输出描述
对于每组数据,输出一个长度为mm的字符串,表示从左到右mm个彩灯的颜色。
R代表红色;G代表绿色;B代表蓝色。
输入样例
2
3 1
2 3
输出样例
RRG
GR

分析:

红、绿、蓝分别表示0、1、2,每次操作就相当于+1,原问题就转化为求n的三进制


表示的最低的m位,即求 n mod 3^m


的三进制表示。


复杂度 O(m)

代码如下:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
#define ll unsigned long long 
char ans[40];
char s[4]={'R','G','B'};
void init()
{
    for(int i=0;i<33;i++)
        ans[i]='R';
}
int main()
{
#ifdef yibin
    freopen("in.txt","r",stdin);
#endif
    ll t, n, m, i, j, k;
    scanf("%I64d",&t);
    while(t--){
        scanf("%I64d%I64d",&m, &n);
        init();
        k=m;
        while(n){
            k--;
            ans[k]=s[(0+n)%3];
            n/=3;
        }
        for(i=0;i<m;i++)
            printf("%c",ans[i]);
        puts("");
    }
    return 0;
}


平衡三进制计算机模拟与构建 使用图灵完备游戏,及2位二进制数的编码:T(00)、0(01或10)、1(11),完整的模拟了一台平衡三进制图灵机,同时尽可能的模拟平衡三进制的运行逻辑。。。 阅读详情

相关推荐

FPGA之全数字锁相环(DPLL)

1. 数字锁相环的基本原理和组成 1.1 锁相环(PLL)的简介 锁相环最开始并不是用在数字电路中,而是模拟短路中。对于模拟电路中的锁相环,大家可以参考这篇文章稍微看一下,数字和模拟只是实现的方法不同,但是原理、步骤还是共同的。关于模拟PLL。可以参考一片文章: http://www.sohu.com/a/190569594_464086 首先在学习数字锁相环之前,我们应该先了解什么是锁相环?锁相...

DBLLLLLLLL的博客 5万+

BestCoder Round #81 (div.2) Machine

Machine Accepts: 580 Submissions: 1890 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) 问题描述 有一个机器,它有 m (2\leq m\leq 30)m(2≤m≤30) 个彩灯...

weixin_34367257的博客 158

别再手动调波形了!用STM32G474的HRTIM+DAC生成精密锯齿波,附完整CubeMX配置

本文详细介绍了如何利用STM32G474的高分辨率定时器(HRTIM)和数模转换器(DAC)协同工作,实现高精度锯齿波生成。通过CubeMX配置指南、关键寄存器计算和实践技巧,帮助开发者快速掌握全硬件实现的波形生成方案,显著提升嵌入式系统的波形控制精度和响应速度。

weixin_28716769的博客 246

HDU5670 —— Machine

There is a machine with m(2≤m≤30)m(2≤m≤30) coloured bulbs and a button.When the button is pushed, the rightmost bulb changes.  For any changed bulb,  if it is red now it will be green;  if it is green...

苍雪的博客 227

Vivado 2023.1及更早版本永久License全功能解锁:HLS、System Generator等IP核使用详解

本文深入解析Vivado 2023.1及更早版本的全功能许可证,详细指导如何解锁HLS、System Generator等高级IP核。通过许可证类型对比、功能验证方法和实战应用指南,帮助FPGA开发者充分利用Vivado工具套件,提升复杂系统设计和算法加速的效率。

weixin_31286719的博客 379

【安全加固】应对Sweet32攻击:TLS/SSL协议3DES漏洞深度解析与修复指南

本文深度解析了CVE-2016-2183(Sweet32攻击)漏洞,该漏洞利用TLS/SSL协议中3DES加密算法的64位块大小缺陷,通过大量数据流量实施“生日攻击”导致信息泄露。文章提供了从原理分析、系统排查到跨平台修复的完整指南,重点指导如何在Windows、Linux服务器及网络设备中禁用不安全的3DES密码套件,并采用AES-GCM等更安全的加密方式,以彻底修复此TLS/SSL漏洞。

weixin_29230649的博客 585

平衡三进制基础

前苏联的平衡三进制计算机,确实有着让人着迷的魅力,特别是平衡三进制,有种说不清道不明的美感;得益于它的对称性,对于负数不必使用额外的负号,使得平衡三进制在四则运算的加、减、乘法效率,会比二进制高;任可事物都有优缺点,平均三进制也不例外,但不影响欣赏它,就像那句话:“也许最美的进制是平衡三进制”————《编程的艺术 美国计算机学家高德纳著》如果制造三进制计算机,那使用平衡三进制是比标准三进制更优的选择,正规的三进制的数字都是由012构成的,而平衡三进制的数字是由-101构成的;

qq_39858654的博客 4994

USRP X410 MPM版本与主机UHD版本不匹配问题记录与解决

至此大功告成!之前安装软件的坑算是填起来了,再次记录一下,希望能帮到有同样问题的小伙伴~

yanzuwu233的博客 1434

三进制电路(逻辑门版)

当一个输入为正,一个为零,或者两个输入都为正时,输出负电压信号。需要注意的一点是,电路在结构上的不对称性使得在一个输入为正,一个输入为零时输出的结果会有略微的不同,虽然都是负电压信号,但一个是强信号(-5),一个是弱信号(-1)。在上一篇文章中,本人发布了一个电路拓扑结构用以表示三进制的-1,0,1状态,即平衡三进制,而华为在研究的三进制是0,1,2状态的非平衡三进制。该逻辑门可以实现的效果是将负电压信号转换为正电压信号,负电压信号转换为正电压信号,同时零电压信号保持不变。

weixin_74954416的博客 2037

哈希拓展攻击CTF题做法

kali下载相关工具hash-ext-attack:hash拓展题目特征:2023楚慧杯upload_shell实验吧之让我进去:前言:具体怎么加密解密补位的原理我不懂,深入理解的部分我在文末挂了链接,以下也只是我做题的结论和通解,可能不准确(但是做题还挺准确),有错误欢迎指出:是在密码加密过程中引入的一个随机值,它与密码结合使用,目的是增加密码的复杂性和安全性。在密码加密中,常见的做法是将用户提供的密码进行哈希处理,然后存储哈希值而不是明文密码

2301_76690905的博客 2419

【深度学习】普通卷积、DWconv(逐深度卷积)与PWconv(逐点卷积)以及DSconv(深度可分离卷积)

深度可分离卷积(Depthwise Separable Convolution)通过将常规卷积分解为逐通道卷积(Depthwise)和逐点卷积(Pointwise)两步,显著减少了参数量和计算成本。常规卷积同时提取空间和通道特征,而深度可分离卷积先对每个通道单独进行空间卷积,再用1×1卷积调整通道数。以输入3通道、输出4通道的64×64图像为例,常规卷积需108个参数,而深度可分离卷积仅需39个参数,减少了约2/3。这种结构在轻量级网络(如MobileNet)中广泛应用,可在保持性能的同时降低计算资源需求。

猫天意的博客 4058

[hdu 5670][BestCoder Round #81 t1] Machine

Machine Accepts: 580  Submissions: 1890  Time Limit: 2000/1000 MS (Java/Others)  Memory Limit: 65536/65536 K (Java/Others) 问题描述 有一个机器,它有 m(2≤m≤30)m (2\leq m\leq 30)m(2≤m≤30) 个彩灯和一个按钮。每按下按钮时,最右边的彩灯

ATOD 719

Python量化交易实战:如何用vnpy+Tushare获取股票历史数据(附完整代码)

本文详细介绍了如何利用vn.py框架与Tushare数据接口,构建一个健壮的Python量化交易数据获取引擎。通过封装Tushare API,实现股票历史数据的自动化获取与格式转换,并适配vn.py的BarData结构,为策略回测与实盘交易提供稳定、高效的数据基础。文中提供了完整的代码实现,涵盖环境配置、核心封装逻辑及高级功能扩展。

cola5的博客 1219

HDU 5670 Machine 水题

Machine 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5670 Description There is a machine with m(2≤m≤30) coloured bulbs and a button.When the button is pushed, the rightmost bulb changes. For any ch...

weixin_34295316的博客 141

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

HDU 5670 Machine

Machine Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 290Accepted Submission(s): 179 Problem Description There is a machine withm(2≤...

weixin_30342827的博客 66

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

[进制转换](水题) Machine (HDU5670)

题目描述 题解 AC代码 题目描述 题目链接 一个机器有m(2&amp;amp;lt;=m&amp;amp;lt;=30)m(2&amp;amp;lt;=m&amp;amp;lt;=30)m (2nnn和按下按钮的次数mmm,输出电灯的颜色。 题解 水题。如果将红色视为0,绿色视为1,蓝色视为2。则这个机器可以看作一个m位的三进制数。那么该题就转化为,把一个十进制数转化为3进制。 AC代码 #include &amp;am

loyxCCS的博客 239

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

hdu-5670 Machine(水题附上java代码)

题目链接: Machine Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) 问题描述 有一个机器,它有 m (2\leq m\leq 30)m(2≤m≤30) 个彩灯和一个按钮。每按下按钮时,最右边的彩灯会发生一次变换。变换为: 1. 如果当前状态为红色...

weixin_30670965的博客 91

HDU 5670 Machine——BestCoder Round #81(div.2)

HDU 5670 Machine——BestCoder Round #81(div.2)

queuelovestack的专栏 797

HDU5670Machine(抽象进制)

有一个机器,它有 m (2\leq m\leq 30)m(2≤m≤30) 个彩灯和一个按钮。每按下按钮时,最右边的彩灯会发生一次变换。变换为: 1. 如果当前状态为红色,它将变成绿色; 2.如果当前状态为绿色,它将变成蓝色; 3.如果当前状态为蓝色,它将变成红色,并且它左边的彩灯(如果存在)也会发生一次变换。 初始状态下所有的灯都是红色的。 询问按下按钮 n (1\leq...

weixin_30270561的博客 88

对于三进制计算机逻辑运算方法的猜想

这件事主要源于优快云上的这篇文章:莫斯科国立大学三进制计算机发展史 。阅读后就猜想对于三进制计算机的逻辑运算是如何处理的呢? 在二进制计算机中,基本的逻辑计算有:“与”,“或”和“非”。下面分别用AND、OR、NOT来表示。0 AND 0 = 0        0 OR 0 = 0        NOT 0 = 10 AND 1 = 0        0 OR 1 = 1    

zenny_chen的专栏 5455

三进制模拟

for(int i=1;i<=m;++i) tmp*=3; for(int i=0;i<tmp;++i) { int t=i,cnt=0; ll sum1=0,sum2=0; while(t) { if(t%31)sum1+=b[cnt]; else if(t%32)sum2+=b[cnt]; cnt++,t/=3; } 大意如此

s6ddf的博客 295

NOIP模拟 ----平衡三进制

题目 平衡三进制,是一种以 3 为基数,-1(以下用T表示)、0、1 为基本数码的进制。由于 -1 的引入,这种进制不需要额外的符号就能直接表示负数。正因为这一点,使得平衡三进制在加减法和乘法方面的效率要比二进制高。 美国著名计算机学家高德纳在《编程的艺术》一书中指出,“也许最美的进制是平衡三进制”。 平衡三进制和其他进制一样,各...

weixin_30879833的博客 637

C程序-蓝桥-算法提高 三进制数位和

问题描述   给定L和R,你需要对于每一个6位三进制数(允许前导零),计算其每一个数位上的数字和,设其在十进制下为S。   一个三进制数被判断为合法,当且仅当S为质数,或者S属于区间[L,R]。   你的任务是给出合法三进制数的个数。 输入格式   一行两个非负整数L,R。 输出格式   一行一个非负整数表示答案。 样例输入 0 0 样例输出 330 数据规模和约定   保证...

qq_40788199的博客 627

位操作符(异或)的骚操作 整数之间的交换

位操作符的巧妙运用

2501_90303633的博客 1074

hdu 5670 Machine(模拟)

Description There is a machine with m (2\leq m\leq 30) coloured bulbs and a button.When the button is pushed, the rightmost bulb changes.  For any changed bulb,  if it is red now it will be g

linyuxilu的博客 438

hdu5670Machine

Problem Description There is a machine with m(2≤m≤30) coloured bulbs and a button.When the button is pushed, the rightmost bulb changes. For any changed bulb,if it is red now it will be green;if it i

ACM__dongsheng的博客 686
上一篇: ZOJ 3869 -- Ace of Aces
下一篇: POJ -- 1201--Intervals (差分约束系统)
yibin94
博客等级 码龄11年 78粉丝 158原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值