上海市計算機學會競賽平臺2022年11月月賽丙組染色問題

題目描述

𝑛n?個點排成一列,需要給每個點一個顏色,顏色有?𝑚m?種。請問有多少種方法,能使任意相鄰兩個點的顏色均不相同?

輸入格式

兩個整數:表示?𝑛n?與?𝑚m

輸出格式

單個整數:表示染色方案數模?1,000,000,0071,000,000,007?的余數。

數據范圍
  • 對于?30%30%?的數據,1≤𝑛,𝑚≤101≤n,m≤10
  • 對于?60%60%?的數據,1≤𝑛,𝑚≤100001≤n,m≤10000
  • 對于?100%100%?的數據,1≤𝑛≤10151≤n≤1015
  • 1≤𝑚≤1091≤m≤109
樣例數據

輸入:

3 2

輸出:

2

說明:

合法的染色方案有:{1,2,1} {2,1,2}?

詳見代碼:

#include<bits/stdc++.h>
using namespace std;
const long long mod = 1000000007;
long long f(long long k, long long p) 
{if(p == 1) return k;long long t = f(k, p / 2);if(p % 2 == 0) {return (t * t) % mod;}else {return (((t * t) % mod) * k) % mod;}}
int main() 
{long long n, m, ans;cin >> n >> m;ans = m * f(m - 1, n - 1) % mod;cout << ans << endl;return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/40146.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/40146.shtml
英文地址,請注明出處:http://en.pswp.cn/web/40146.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【控制Android.bp的編譯】

1.首先Android.bp的語法是不支持if 條件語句的 2.查到可以用enabled來控制Android.bp中的模塊是否參與編譯&#xff0c;但是并不能實現動態的控制&#xff0c;比如你需要根據獲取到的安卓版本來控制一個Android.bp是否編譯&#xff0c;是無法做到的。enabled只能是固定的true或…

spark shuffle寫操作——BypassMergeSortShuffleWriter

創建分區文件writer 每一個分區都生成一個臨時文件&#xff0c;創建DiskBlockObjectWriter對象&#xff0c;放入partitionWriters 分區writer寫入消息 遍歷所有消息&#xff0c;每一條消息都使用分區器選擇對應分區的writer然后寫入 生成分區文件 將分區writer的數據flu…

Java中初始化一個List的多種方式

1.最原始的方式&#xff1a;先創建&#xff0c;然后再添加元素 List<String> list new ArrayList<>(); list.add("apple"); list.add("banana"); list.add("cherry");2.使用Arrays.asList 這是一種快速方便的方式&#xff0c;直接…

從海上長城到數字防線:視頻技術在海域邊防現代化中的創新應用

隨著全球化和科技發展的加速&#xff0c;海域安全問題日益凸顯其重要性。海域邊防作為國家安全的第一道防線&#xff0c;其監控和管理面臨著諸多挑戰。近年來&#xff0c;視頻技術的快速發展為海域邊防場景提供了新的解決方案&#xff0c;其高效、實時、遠程的監控特點極大地提…

面試八股Day1

JavaSE&#xff08;回顧&#xff09; 什么是java? java跟c的區別&#xff1f;Java語言有哪些特點&#xff1f;JVM、JDK和JRE有什么區別&#xff1f;什么是跨平臺性&#xff1f;原理是什么&#xff1f;什么是字節碼&#xff1f;采用字節碼的好處是什么&#xff1f; 說說Java程…

如何快速開展每日待辦工作 待辦任務高效管理

每天&#xff0c;我們都需要處理大量的待辦工作&#xff0c;如何高效有序地開展這些工作成為了我們必須要面對的問題。僅僅依靠個人的記憶和腦力去管理這些繁雜的事務&#xff0c;顯然是一項艱巨的挑戰。在這個時候&#xff0c;如果能有一款實用的待辦工具來輔助我們&#xff0…

深入理解Spring應用中的初始化和清理代碼執行方式

目錄 引言使用PostConstruct和PreDestroy注解 PostConstructPreDestroy 實現InitializingBean和DisposableBean接口 afterPropertiesSet()destroy() 使用init-method和destroy-method屬性 init-methoddestroy-method 使用Bean注解的initMethod和destroyMethod屬性 initMethodd…

【高級篇】第8章 Elasticsearch 安全與權限管理

在深入探討Elasticsearch高級應用的征途中,我們無法忽視其核心——安全與權限管理的重要性。此章節將為你全面剖析如何構建一個既強大又安全的數據搜索與分析平臺。本章內容將圍繞X-Pack的強大功能展開,深入用戶與角色管理的實踐,以及如何利用SSL/TLS加密來強化數據傳輸的安…

如何使用C++調用Pytorch模型進行推理測試:使用libtorch庫

如何使用C調用Pytorch模型進行推理測試&#xff1a;使用libtorch庫 目錄 如何使用C調用Pytorch模型進行推理測試&#xff1a;使用libtorch庫一、環境準備1&#xff0c;linux&#xff1a;以ubuntu 22.04系統為例1. 準備CUDA和CUDNN2. 準備C環境3, 下載libtorch文件4, 編寫測試li…

期權學習必看圣書:《3小時快學期權》要在哪里看?

今天帶你了解期權學習必看圣書&#xff1a;《3小時快學期權》要在哪里看&#xff1f;《3小時快學期權》是一本關于股票期權基礎知識的書籍。 它旨在通過簡明、易懂的語言和實用的案例&#xff0c;讓讀者在短時間內掌握股票期權的基本概念、操作方法和投資策略。通過這本書&…

img的onload事件不觸發

var img new Image(); img.src "圖片地址" img.addEventListener(load, function() {// 加載完后的處理 }, false);上面的代碼&#xff0c;可能存在設置addEventListener之前&#xff0c;圖片已經加載完了&#xff0c;onload事件不處罰。 調換一下img.src和img.add…

Linux系統(CentOS)安裝Mysql5.7.x

安裝準備&#xff1a; Linux系統(CentOS)添加防火墻、iptables的安裝和配置 請訪問地址&#xff1a;https://blog.csdn.net/esqabc/article/details/140209894 1&#xff0c;下載mysql安裝文件&#xff08;mysql-5.7.44為例&#xff09; 選擇Linux通用版本64位&#xff08;L…

算力互聯網網絡架構;SRV6;智享WAN

目錄 算力互聯網網絡架構 SRV6 主要特點 應用場景 結論 G-SRV6 多層次網絡切片 智享WAN 一、定義與背景 二、關鍵技術 三、應用場景與優勢 四、發展現狀與未來展望 智能算力網絡成為智能經濟時代代表性數字基礎設施 算力互聯網網絡架構 為構建算力互聯網這個前瞻性…

SQLAlchemy配置連接多個數據庫

1.定義配置項 首先定義兩個數據庫的配置信息 # PostgreSQL database configuration DB_USERNAMEpostgres DB_PASSWORDpassord DB_HOST127.0.0.1 DB_PORT5432 DB_DATABASEtest# mysql database configuration DB_USERNAME_MYSQLroot DB_PASSWORD_MYSQLpassword DB_HOST_MYSQL127…

后端之路——阿里云OSS云存儲

一、何為阿里云OSS 全名叫“阿里云對象存儲OSS”&#xff0c;就是云存儲&#xff0c;前端發文件到服務器&#xff0c;服務器不用再存到本地磁盤&#xff0c;可以直接傳給“阿里云OSS”&#xff0c;存在網上。 二、怎么用 大體邏輯&#xff1a; 細分的話就是&#xff1a; 1、準…

Rust: Fury高性能序列化庫嘗試

在序列化庫中&#xff0c;傳統的有Json,XML&#xff0c;性能好的有thrift&#xff0c;protobuf等。據說Fury官網的介紹&#xff0c;Fury性能要遠遠好于protobuf&#xff0c;且不象protobuf還需要定義IDL&#xff0c;非常輕便&#xff0c;隨取隨用。 今天來嘗試一下。 一、carg…

gitlab每日備份以及restore

gitlab服務有非常簡潔的每日備份命令&#xff0c; 從production的gitlab的每日備份中restore到backup環境也非常方便。 一、Production gitlab每日備份 1. Production gitlab環境上編寫腳本 cat /root/gitlab_bak.shgitlab-rake gitlab:backup:create > /var/opt/gitl…

JavaSE (Java基礎):面向對象(下)

8.7 多態 什么是多態&#xff1f; 即同一方法可以根據發送對象的不同而采用多種不同的方式。 一個對象的實際類型是確定的&#xff0c;但可以指向對象的引用的類型有很多。在句話我是這樣理解的&#xff1a; 在實例中使用方法都是根據他最開始將類實例化最左邊的類型來定的&…

消息中間件ApacheKafka在windows簡單安裝

一.背景 之前公司需要API網關管理軟件ApacheShenYu&#xff0c;我相信把調用的記錄都存到一個數據庫。他支持日志推送到kafka&#xff0c;所以&#xff0c;我準備嘗試一下通過kafka接收調用的日志信息。第一步&#xff0c;當然是安裝kafka了。 二.ApacheKafka的下載 打開下載…

【C++】 解決 C++ 語言報錯:Memory Leak

文章目錄 引言 內存泄漏&#xff08;Memory Leak&#xff09;是 C 編程中常見且嚴重的內存管理問題之一。當程序分配了內存而沒有正確釋放&#xff0c;導致內存無法被重新利用時&#xff0c;就會發生內存泄漏。這種錯誤會導致程序占用越來越多的內存&#xff0c;最終可能導致系…