求教 a的b次方(1<=A,B<=10000)

xxx0624 2012-01-27 02:26:07
C语言
根据二分的思想求解,常规的算法会超时
例如:A*A*A==((A*A)%C)*A
...全文
220 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
elated 2012-01-29
  • 打赏
  • 举报
回复

#b为正整数
def power(a, b):
if b == 1:
return a

remainder = b % 2
half = (b - remainder) / 2
value = power(a, half)
value *= value

if remainder == 1:
value *= a

return value
pp25210 2012-01-27
  • 打赏
  • 举报
回复

#include<iostream>
  using namespace std;
  int f(int a,int b,int n);
  int main()
  {
  cout<<f(19999,2999896,17)<<endl;
  return 0;
  }
  int f(int a,int b,int n)
  {
  if(a<0||b<0||n<0)return -1;
  int binary[32];
  int index=0;
  while(b)
  {
  if(b&1)
  {
  binary[index]=1;
  }
  else
  {
  binary[index]=0;
  }
  index++;
  b>>=1;
  }
  index--;
  int result=1;
  while(index>=0)
  {
  result=(result*result)%n;
  if(binary[index])
  {
  result=(result*a)%n;
  }
  index--;
  }
  return result;
  }

这是我刚刚找到的一个算法,依据《算法导论》(第二版中文版,机械工业出版社出版)第539页的算法来实现,速度非常快。即使是对非常大的参数也是如此
Gloveing 2012-01-27
  • 打赏
  • 举报
回复
大数运算
xxx0624 2012-01-27
  • 打赏
  • 举报
回复
会啊。
jcadre 2012-01-27
  • 打赏
  • 举报
回复
常规想法 for循环啊 不过应该会越界啦。
内容概要:本文围绕“可再生能源发电与电动汽车的协同调度策略”展开硕士论文级别的研究与复现工作,基于Matlab平台构建了高比例可再生能源接入背景下电力系统与电动汽车(EV)之间的多时间尺度协同优化模型。研究重点在于应对风光发电不确定性,充分利用电动汽车作为移动储能单元的灵活充放电能力(含V2G技术),实现电网削峰填谷、提升新能源消纳效率与系统运行经济性。文中综合考虑了异质电动车集群特性、V2G过程中的损耗约束以及随机因素影响,采用如深度确定性策略梯度(DDPG)强化学习、混合整数线性规划(MILP)等先进优化算法进行求解,并通过基准模型对比验证了所提自适应调度策略在提升电网稳定性、降低运行成本方面的有效性。; 适合人群:具备一定电力系统基础知识、优化理论背景及Matlab编程能力的研究生、科研人员,以及从事新能源并网、智能电网调度、车网互动(V2G)等方向的工程技术人员。; 使用场景及目标:①学习并复现已发表高水平硕士论文中的协同调度建模方法与仿真流程;②掌握将深度强化学习(如DDPG)应用于虚拟电厂、电动汽车集群调度等复杂非线性决策问题的技术路径;③为开展新能源消纳、需求侧响应、微电网优化运行等相关课题的研究提供可复用的代码框架与创新思路参考。; 阅读建议:建议读者结合文中提供的完整Matlab代码与技术文档,深入理解模型构建逻辑、算法实现细节与参数设置依据,优先在Simulink/Matlab环境中运行并调试仿真案例,通过调整场景参数与算法超参,探究不同策略对调度效果的影响,从而深化对协同调度机制与智能优化方法应用的理解。

70,038

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧