zoukankan      html  css  js  c++  java
  • [HDOJ6144] Arithmetic of Bomb(模拟)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6144

    XJB模拟一下就行,反正最多重复⑨次。

    非要说用上什么数学原理的话,大概就是(a+b)%mod = (a%mod)+(b%mod)%mod,(a*b)%mod。。。吧

      1 /*
      2 ━━━━━┒ギリギリ♂ eye!
      3 ┓┏┓┏┓┃キリキリ♂ mind!
      4 ┛┗┛┗┛┃\○/
      5 ┓┏┓┏┓┃ /
      6 ┛┗┛┗┛┃ノ)
      7 ┓┏┓┏┓┃
      8 ┛┗┛┗┛┃
      9 ┓┏┓┏┓┃
     10 ┛┗┛┗┛┃
     11 ┓┏┓┏┓┃
     12 ┛┗┛┗┛┃
     13 ┓┏┓┏┓┃
     14 ┃┃┃┃┃┃
     15 ┻┻┻┻┻┻
     16 */
     17 #include <bits/stdc++.h>
     18 using namespace std;
     19 #define fr first
     20 #define sc second
     21 #define cl clear
     22 #define BUG puts("here!!!")
     23 #define W(a) while(a--)
     24 #define pb(a) push_back(a)
     25 #define Rint(a) scanf("%d", &a)
     26 #define Rll(a) scanf("%I64d", &a)
     27 #define Rs(a) scanf("%s", a)
     28 #define Cin(a) cin >> a
     29 #define FRead() freopen("in", "r", stdin)
     30 #define FWrite() freopen("out", "w", stdout)
     31 #define Rep(i, len) for(int i = 0; i < (len); i++)
     32 #define For(i, a, len) for(int i = (a); i < (len); i++)
     33 #define Cls(a) memset((a), 0, sizeof(a))
     34 #define Clr(a, x) memset((a), (x), sizeof(a))
     35 #define Full(a) memset((a), 0x7f7f7f, sizeof(a))
     36 #define lrt rt << 1
     37 #define rrt rt << 1 | 1
     38 #define pi 3.14159265359
     39 #define RT return
     40 #define lowbit(x) x & (-x)
     41 #define onenum(x) __builtin_popcount(x)
     42 typedef long long LL;
     43 typedef long double LD;
     44 typedef unsigned long long ULL;
     45 typedef pair<int, int> pii;
     46 typedef pair<string, int> psi;
     47 typedef pair<LL, LL> pll;
     48 typedef map<string, int> msi;
     49 typedef vector<int> vi;
     50 typedef vector<LL> vl;
     51 typedef vector<vl> vvl;
     52 typedef vector<bool> vb;
     53 
     54 const LL mod = 1e9+7;
     55 const int maxn = 1001000;
     56 char s[maxn];
     57 int n;
     58 int digit[maxn];
     59 LL ret;
     60 
     61 LL mul(LL x, LL n) {
     62     LL ret = 1;
     63     while(n) {
     64         if(n & 1) ret = ret * x % mod;
     65         x = x * x % mod;
     66         n >>= 1;
     67     }
     68     return ret;
     69 }
     70 
     71 signed main() {
     72     // FRead();
     73     int T;
     74     Rint(T);
     75     W(T) {
     76         Rs(s+1); n = strlen(s+1);
     77         ret = 0;
     78         int i = 1;
     79         while(i <= n) {
     80             if(s[i] == '(') {
     81                 int j = i + 1, k = 0;
     82                 LL x = 0;
     83                 while(s[j] != ')') {
     84                     digit[++k] = s[j] - '0'; j++;
     85                 }
     86                 j++; j += 2;
     87                 while(s[j] != ')') {
     88                     x = x * 10 + s[j] - '0';
     89                     j++;
     90                 }
     91                 i = j + 1;
     92                 LL y = k * x;
     93                 For(j, k+1, y+1) digit[j] = digit[(j-1)%k+1];
     94                 For(j, 1, y+1) {
     95                     ret = ret * 10 % mod;
     96                     ret += digit[j];
     97                     ret %= mod;
     98                 }
     99             }
    100             else {
    101                 int j = i, k = 0;
    102                 while(s[j] != '(' && s[j]) {
    103                     digit[++k] = s[j++] - '0';
    104                 }
    105                 i = j;
    106                 For(j, 1, k+1) {
    107                     ret = ret * 10 % mod;
    108                     ret += digit[j];
    109                     ret %= mod;
    110                 }
    111             }
    112         }
    113         printf("%I64d
    ", ret);
    114     }
    115     RT 0;
    116 }
  • 相关阅读:
    Javascript笔记09:Javascript的下拉式导航菜单
    Javascript笔记08:Javascript的if...else语句
    Android(java)学习笔记84:SQLiteDatabase的query方法参数
    Android(java)学习笔记83:各种边距设置
    Android(java)学习笔记82:利用SpannableString设置复合文本
    PHP笔记06:http响应中的状态码
    html笔记04:在html之中导入css两种常见方法
    POJ 3307 Smart Sister
    ZOJ 2872 Binary Partitions
    HDU 4685 Prince and Princess
  • 原文地址:https://www.cnblogs.com/kirai/p/7392052.html
Copyright © 2011-2022 走看看