zoukankan      html  css  js  c++  java
  • 华农oj 2192: hzk又在打人【CRT合并/待补】

    2192: hzk又在打人
    Time Limit: 12 Sec  Memory Limit: 512 MB
    Submit: 52  Solved: 1
    [Submit][Status][Web Board]
    Description
    
    
    
    hzk又要打人了,他让我们做一个cpu能够计算一些简单的指令,首先他有n条指令,指令形如”c x”,其中c ={+,^,*},x是一个非负整数.
    
    + a , * a , ^ a分别代表加,乘,乘方.假设我们现在有+ 2 , * 3, ^ 2 三个指令那么对于输入的x,我们得到输出 ((x+2)*3)^2 , 比如x=2的时候,那么输出结果为144.
    
    现在hzk要求cpu有2种操作
    
    1、1 x 表示输入一个非负整数x,然后输出相应的结果 ,因为结果可能会很大所以我们找一个吉利数字取模比如 17017
    
     
    
    2、2 p c x  表示对于把第p个指令改成c x ; c是运算符{^,+,*},x是一个非负整数.
    
    现在hzk要我们做一个这样的cpu,可是我们真的做不出来了,你能帮帮我们吗?
    
    
    
    
    Input
    第一行一个数字 T 代表总共有T组测试,(T<=5)
    
    接下来每一组测试第一行有两个数字 n,m表示n条指令,m次操作.(1<=n,m<=10^5)
    
    接下来n行,每行是一条指令形如 “c x”,意义如上所述。(0<=x<17017)
    
    接下来m行,表示m次操作,操作形如”1 x”或者”2 p c x”。(0<=x<17017 , 1<=p<=n)
    
    
    
    Output
    对于每组测试的操作1,输出对应的答案(mod 17017)。每个数字一行
    
    
    Sample Input
    2
    
    3 2
    + 3
    * 3
    ^ 2
    2 1 + 2
    1 2
    
    2 2
    ^ 2
    + 4
    1 2
    1 3
    Sample Output
    144
    8
    13
    
    HDU 5238 Calculator(中国剩余定理+线段树)
    
    
    17017=7*11*13*17
    对每个质因子用线段树维护一个表
    表示输入经过一系列操作会得到啥
    CRT合并
    
  • 相关阅读:
    Spring +quartz获取ApplicationContext上下文
    开源 java CMS
    js实现页面跳转的几种方式
    hdu-4089-Activation-概率dp
    linux 内核定时器
    linux 短延时
    linux 基于 jiffy 的超时
    linux 让出处理器
    linux 延后执行
    linux获知当前时间
  • 原文地址:https://www.cnblogs.com/Roni-i/p/8998079.html
Copyright © 2011-2022 走看看