已知長度最大為200位的正整數n,請求出2011n的後四位。
第一行為乙個正整數k,代表有k組資料(k≤200),接下來的k行,每行都有乙個正整數n,n的位數≤200。
每乙個n的結果為乙個整數佔一行,若不足4位,去除高位多餘的0。
3528
792
1051肯定用的是分治的思想,關鍵是怎麼用815521
一開始wa了兩邊是用了整形,畢竟他位數可能是是200位……
正確做法是用了字串→_→
【wa**】
**想法沒錯,就是計算不了太大的數
#include
#include
#include
#include
#include
using
namespace std;
#include
#include
#include
#include
#include
#include
#include
#include
#define ll long long
#define n 1000001
#define mod 1000000007
#define mod 10000
int n;
intm
(int p)
intmain()
return0;
}
【ac**】
這個參考了學長的**
#include
#include
#include
#include
#include
using
namespace std;
#include
#include
#include
#include
#include
#include
#include
#include
#define ll long long
#define n 1000001
#define mod 1000000007
#define mod 10000
char a[n]
;int
main()
for(
; i) c=
(c*2011)%
10000
; cout<}return0;
}
資訊學奧賽
排列與組合是常用的數學方法,其中組合就是從n個元素中抽出r個元素 不分順序且r n 我們可以簡單地將n個元素理解為自然數1,2,n,從中任取r個數。現要求你用遞迴的方法輸出所有排列。一行兩個自然數n r 1 include include includeusing namespace std int...
資訊學奧賽
時間限制 1000 ms 記憶體限制 65536 kb 提交數 3478 通過數 2486 給定乙個由不同的小寫字母組成的字串,輸出這個字串的所有全排列。我們假設對於小寫字母有 a b y z 而且給定的字串中的字母已經按照從小到大的順序排列。只有一行,是乙個由不同的小寫字母組成的字串,已知字串的長...
資訊學奧賽 C (一)賦值語句
在c c 中,在語言中的作用並非是數學意義上的 等於號 也不表示判斷。在這裡的意思是賦值 表示把它右邊的值賦給左邊。一般形式為 變數 表示式 有的時候編譯器會提示不是合法的 左值 就是說賦值號左邊不是能被賦值的變數。輸入兩個正整數a和b,試交換a和b的值。分析 這是乙個典型的賦值題目,沒有其他的運算...