牛客周赛 E-茜茜的计算器

原题链接:E-茜茜的计算器​​​​​​

题目大意:在计算器上显示的0~9十个数字,如果这个计算器有n个位置,可以显示n个数字,问能显示多少种不同的对称数字。只能横轴和竖轴对称。

思路:容斥,最终的答案是横轴对称的数量+纵轴对称的数量-都对称的数量。可以横轴对称的数字有0 1 8 3,这四个数字可以在n个位置随意放置,一定是对称的,那么横轴对称的数量就是4^{n}。对于纵轴对称的数字,需要对n的奇偶性质进行讨论,如果奇数,那么中间的那一个位置,可以放0和8二种数字,而且因为是纵轴对称,那么只要确定了一边另一边也就确定了,所以奇数的数量就是2*2^{n/2},如果是偶数那么中间就没有0和8,那么数量就是2^{n/2}。对于都对称的数字,那么就是由0和8这二个数字组成的数,那么如果是n是奇数,那么数量就是2*2^{n/2},如果是偶数,那么数量就是2^{n/2}.

//冷静,冷静,冷静
//调不出来就重构
#include<bits/stdc++.h>
#define endl '\n'
using namespace std;
typedef long long ll;
typedef long double ld;
typedef pair<ll,ll> pii;
const int N=1e6+10,mod=1e9+7;
ll ksm(ll a,ll b)
{
	ll ans=1;
	do
	{
		if(b&1)ans*=a;
		a*=a;b>>=1;
		ans%=mod;a%=mod;
	}while(b);
	return ans;
}
int main()
{
	ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
	ll n;cin>>n;
	ll ans=ksm(4,n);
	if(n&1)
	{
		ans=ans+2*ksm(4,n/2)%mod;ans%=mod;
		ans=ans-2*ksm(2,n/2)%mod;ans%=mod;
	}
	else
	{
		ans=ans+ksm(4,n/2)%mod;ans%=mod;
		ans=ans-ksm(2,n/2)%mod;ans%=mod;
	}
	cout<<(ans%mod+mod)%mod;
    return 0;

}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/718672.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Docker(二)-Centos7安装Docker并配置镜像加速

系统用户为非root用户 1.安装条件 确定Centos版本是否是7及以上sudo vim /etc/redhat-release2.官网地址 https://docs.docker.com/engine/install/centos3.卸载已安装的旧版本 sudo yum remove docker \docker-client \docker-client-latest \docker-common \docker-lates…

数字孪生定义及应用介绍

数字孪生定义及应用介绍 1 数字孪生&#xff08;Digital Twin, DT&#xff09;概述1.1 定义1.2 功能1.3 使用场景1.4 数字孪生三步走1.4.1 数字模型1.4.2 数字影子1.4.3 数字孪生 数字孪生地球平台Earth-2 参考 1 数字孪生&#xff08;Digital Twin, DT&#xff09;概述 数字孪…

项目(一)--高并发内存池项目简介

什么是高并发内存池 它是一个全球性大厂google(谷歌)的 开源项目,项目名字叫tcmalloc,全称是Thread-Caching Malloc,即线程缓存的malloc 作用&#xff1a; 我们知道C语言在堆上开辟空间和 释放使用的是malloc和free函数 并且C的动态内存管理new和delete 的底层实际上也调用了…

白酒行业数字化营销转型方向

白酒行业正站在数字化营销的新风口&#xff0c;随着科技的迅猛发展和消费者行为模式的变革&#xff0c;这一传统行业正迎来前所未有的发展机遇。数字化营销不仅为白酒企业打开了新的市场大门&#xff0c;更在重塑消费者与品牌之间的关系&#xff0c;推动行业向更智能、更个性化…

day02论文学习:能够使大语言模型产生带有引用的文章

1.主题&#xff1a;Enabling Large Language Models to Generate Text with Citations&#xff08;能够使大语言模型产生带有引用的文章&#xff09; 引用出处&#xff1a; Gao, T., Yen, H., Yu, J., & Chen, D. (2023). Enabling Large Language Models to Generate Tex…

05通讯录管理系统——添加联系人

功能描述&#xff1a;实现添加联系人功能&#xff0c;联系人上限为1000人&#xff0c;联系人信息包括姓名、性别、年龄、联系电话、家庭住址。 添加联系人实现步骤&#xff1a; 1.设计联系人结构体 2.设计通讯录结构体 3.main函数中创建通讯录 4.封装添加联系人函数 5.测…

2024-06-17 问AI: 在深度学习中,harmonic mean是什么?

文心一言 在深度学习中&#xff0c;**harmonic mean&#xff08;调和平均数&#xff09;**是一个用于评估模型性能的指标&#xff0c;特别是在处理不平衡的数据集或需要综合多个评估指标的场景中。以下是关于harmonic mean在深度学习中应用的详细解释&#xff1a; 定义&#…

多态深度剖析

前言 继承是多态的基础&#xff0c; 如果对于继承的知识还不够了解&#xff0c; 可以去阅读上一篇文章 继承深度剖析 基本概念与定义 概念&#xff1a; 通俗来说&#xff0c;就是多种形态。具体点就是去完成某个行为&#xff0c; 当不同的对象去完成时会产生出不同的状…

湿法消解石墨消解仪 应用化学分析领域石墨炉

石墨消解仪在化学实验中具有重要的作用。它是一种高级实验设备&#xff0c;广泛应用于化学分析领域&#xff0c;特别是在样品的前处理和测试前的样品制备过程中。 石墨消解仪采用高温高压技术&#xff0c;能够将固体样品中的有机和无机物质转化为可溶性的气体或液体形式。这种…

Aeron:两个代理之间的单向IPC(One-way IPC between two agents)

一、概述 本例展示了如何通过 IPC 在调度于不同线程的两个代理之间传输缓冲区。在继续学习本示例之前&#xff0c;最好先复习一下Simplest Full Example &#xff0c;因为该示例展示的是 IPC 通信&#xff0c;没有增加代理的复杂性。读者还应熟悉Media Driver 流程构建如下&…

结合Boosting理论与深度ResNet:ICML2018论文代码详解与实现

代码见&#xff1a;JordanAsh/boostresnet: A PyTorch implementation of BoostResNet 原始论文&#xff1a;Huang F, Ash J, Langford J, et al. Learning deep resnet blocks sequentially using boosting theory[C]//International Conference on Machine Learning. PMLR, 2…

英特尔 “AI” 科通:英特尔AI大模型应用前瞻

亲爱的科技探险家、前沿探索者、对未来深具好奇心的您&#xff0c; 身处人工智能引领的时代&#xff0c;我们目睹着行业的革命性变革。技术的创新不仅改变着我们的日常&#xff0c;更重新定义着我们对未来的期许。今天&#xff0c;怀着无限激情和期待&#xff0c;我们邀请您参…

国际数字影像产业园:建设与推动企业孵化与梯次培育

国际数字影像产业园在建设与推动企业孵化及梯次培育方面取得了显著成效。未来&#xff0c;随着技术的不断进步和市场的不断扩大&#xff0c;园区将继续发挥其在数字经济产业中的引领作用&#xff0c;为文化产业的发展贡献更多力量。 一、企业孵化与入驻 企业入驻情况&#xff…

物联边缘网关如何助力工厂实现智能化生产?以某智能制造工厂为例-天拓四方

随着工业4.0的深入推进&#xff0c;智能制造工厂成为了工业发展的重要方向。在这个背景下&#xff0c;物联边缘网关以其独特的优势在智能制造工厂中发挥着越来越重要的作用。以下将通过一个具体的智能制造工厂应用案例&#xff0c;来阐述物联边缘网关如何助力工厂实现智能化生产…

Milvus跨集群数据迁移

将 Milvus 数据从 A 集群&#xff08;K8S集群&#xff09;迁到 B 集群&#xff08;K8S集群&#xff09;&#xff0c;解决方案很多&#xff0c;这里提供一个使用官方 milvus-backup 工具进行数据迁移的方案。 注意&#xff1a;此方案为非实时同步方案&#xff0c;但借助 MinIO 客…

在3D视觉技术的帮助下,轻松实现纸箱拆码垛

在繁忙的物流仓库中&#xff0c;纸箱的拆码垛工作常常让人头疼不已。但是&#xff0c;现在有了富唯智能的3D视觉引导纸箱拆码垛解决方案&#xff0c;这一切都变得轻松简单&#xff01; 想象一下&#xff0c;那些堆积如山的纸箱&#xff0c;在3D视觉技术的帮助下&#xff0c;仿…

黄仁勋:下一波AI的浪潮是物理AI

B站&#xff1a;啥都会一点的研究生公众号&#xff1a;啥都会一点的研究生 最近AI圈又发生了啥&#xff1f; 快手视频生成大模型“可灵”开放邀测&#xff0c;效果对标 Sora 在OpenAl文生视频大模型Sora发布后&#xff0c;国内企业争相入局&#xff0c;快手视频生成大模型可…

Confluence安装

Confluence安装 1.安装 #下载confluence版本&#xff08;8.5.11&#xff09; https://www.atlassian.com/software/confluence/download-archives #修改权限 chmod x atlassian-confluence-8.5.11-x64.bin #执行安装 ./atlassian-confluence-8.5.11-x64.bin按照以下提示输入&…

NettyのEventLoopChannel

Netty的重要组件&#xff1a;EventLoop、Channel、Future & Promise、Handler & Pipeline、ByteBuf 本篇主要介绍Netty的EventLoop和Channel组件。 1、Netty入门案例 服务器端的创建&#xff0c;主要分为以下步骤&#xff1a; 创建serverBootstrap对象。配置服务器的…

Avalonia for VSCode

1、在VSCode中编辑AvaloniaUI界面&#xff0c;在VSCode中搜索Avalonia&#xff0c;并安装。如下图&#xff0c;可以发现Avalonia for VSCode还是预览版。 2、 创建一个Avalonia 项目。 选择项目类型 输入项目名称 选择项目所在文件夹 打开项目 3、项目架构如下图。 4、builde…