首页 > 其他分享 >B. Plus and Multiply

B. Plus and Multiply

时间:2023-04-09 22:33:54浏览次数:52  
标签:typedef int long Plus Multiply define

B. Plus and Multiply

手模拟了一下

image
观察每个式子,化简得到:

$a^x + by = n $
由于$a^x$是指数增长,直接枚举它的幂次即可,注意对$a=1$的情况特判
//  AC one more times

#include <bits/stdc++.h>

using namespace std;

#define fi first
#define se second
#define pb push_back
#define endl '\n'
#define all(x) (x).begin(), (x).end()
#define inf64 0x3f3f3f3f3f3f3f3f

typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> pii;
typedef pair<long long,long long> pll;

const int mod = 1e9 + 7;
const int N = 1e5 + 10;

void solve()
{
    ll n, a, b;
    cin>>n>>a>>b;
    if(b == 1)
    {
        cout<<"YES"<<endl;
        return;
    }
    if(a == 1)
    {
        if((n - 1) % b == 0)
        {
            cout<<"YES"<<endl;

        }
        else
            cout<<"NO"<<endl;
        return;
    }
    bool ok = false;
    for(ll i = 0; pow(a, i) <= n; i++)
    {
        ll t1 = pow(a, i);
        if((n - t1) % b == 0)
            ok = true;
    }
    if(ok)
        cout<<"YES"<<endl;
    else cout<<"NO"<<endl;


    return;
}


int main()
{
    //std::ios::sync_with_stdio(false);   cin.tie(nullptr), cout.tie(nullptr);
    // 特殊输入 请注释上方,如__int128等
    int TC = 1;

    cin >> TC;
    for(int tc = 1; tc <= TC; tc++)
    {
        //cout << "Case #" << tc << ": ";
        solve();
    }



    return 0;
}

标签:typedef,int,long,Plus,Multiply,define
From: https://www.cnblogs.com/magicat/p/17301315.html

相关文章

  • SQLPLUS中HELP帮助的安装与删除
    手工建库后SQLPLUS中HELP默认是没有的,下面记录下如何安装及删除SQLPLUS中的HELP命令。注意:SQLPLUS的HELP命令只有在数据库OPEN时才能使用。非OPEN状态使用HELP也报错:SP2-0171:HELPsystemnotavailable.实验如下: 注意:ORACLE11.2.0.4环境下实验SYSDB......
  • Mybatis-plus字段自动填充功能介绍
    新建实体公共字段类@DatapublicclassBaseEntity{/***创建时间*/@TableField(fill=FieldFill.INSERT)privateLocalDateTimecreateTime;/***更新时间*/@TableField(fill=FieldFill.INSERT)privateLocalDateTim......
  • ava: 程序包com.alibaba.nacos.api.common不存在_RuoYi-Cloud-Plus-master_jar包不存
    来看看原因吧,jar包是存在的,但是就是在idea中引用不到,来看看怎么回事: 原来就是这个包找不到,但是从下面看是有的: 但是注意,这里的com.alibaba.nacos.api...原来可不是这样的,这个是我后来修改过的,原来是只有com.alibaba.nacos.common,而引用的是com.alibaba.nacos.api.commo......
  • vue全家桶进阶之路29:Element Plus
    ElementPlus是一个用于Vue.js的UI组件库,为开发人员提供了一组可重用和可定制化的组件,用于构建现代Web应用程序。它是流行的ElementUI库的扩展,重点是提高性能和可访问性。ElementPlus包括广泛的组件,如按钮、表单、表格、对话框等。除了常规的UI组件外,ElementPlus还提供了一些......
  • mybaits-plus优雅的实现数据权限
    前言项目使用mybaits-plus,所以在mybaits-plus的基础上增加数据权限的过滤mybaits-plus自带数据权限支持,但由于系统数据权限相对复杂,通过查看文档发现好像并不适用,且原项目版本低,所以最终还是通过自己的方式实现数据范围我们系统相对复杂,比如可以按机构/用户等多种维度过滤,并且可以......
  • mybatis-plus 生成器
    依赖<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-generator</artifactId><version>3.4.1</version></dependency><dependency>......
  • element-plus中Container 布局容器左右留白
    index.vue代码如下:<scriptlang="ts"setup></script><template><el-containerclass="layout"><el-asideclass="aside"width="200px">Aside</el-aside><el-contain......
  • 【c&c++】#ifdef __cplusplus extern “C”的作用详解
    extern "C"的主要作用就是为了能够正确实现C++代码调用其他C语言代码。加上extern"C"后,会指示编译器这部分代码按C语言的进行编译,而不是C++的。由于C++支持函数重载,因此编译器编译函数的过程中会将函数的参数类型也加到编译后的代码中,而不仅仅是函数名;而C语言并不支持函数重载,因......
  • ShardingSphereJDBC+MybatisPlus实现分库分表
    前言这篇是ShardingSphere-JDBC+Springboot+MybatisPlus+Druid分库分表的简单例子,我们用一个订单表为例,通过简单配置实现数据分片到多个数据库的多个表中。主要配置和代码已经在文中给出,完整例子可以参考GitHub-fruitbasket-litchi-shardingjdbc。准备数据库在一个或两个My......
  • ElementPlus文档本地启动
    1.下载ElementPlus项目本身ElementPlus官方项目本身是包含了最新的ElementPlus的开发文档的。这里放上ElementPlus的GitHub地址链接:ElementPlus(GitHub)有时候国内访问GitHub比较慢,所以这里也放下Gitee的地址:ElementPlus(Gitee)2.启动项目下载好项目之后,用命令行在项......