`
pleasetojava
  • 浏览: 750706 次
  • 性别: Icon_minigender_2
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

ACM小明的数学题Ⅰ C++实现

 
阅读更多

小明的数学题Ⅰ
Description
小明是个小学五年级的学生,为了早点去看自己爱看的卡通,他想快点把作业做完。可是可恶的数学老师今天却布置了一道难题,小明想了很久也不知道该怎么做。你的任务就是帮小明解决掉这道数学题。
题目是这样子的,有一个整数a(-2^31<= a < 2^31-1),计算它的整数幂a^n,其中1<=n<=99。


输入:

第一行是一个整数K,表示有多少个测试用例,以后每行一个测试用例,每行有两个整数a,n。
输出:

每行输出一个测试用例的结果
Sample Input
2
3 5
-2 5

Sample Output
243
-32

#include<iostream>
using namespace std;

__int64 a[1010],b[1010],s[30],knum,e,i1,i2,i;

void cal(int n1,int n2,__int64 s1[],__int64 s2[])
{
memset(a,0,sizeof(a));
for(i1=0;i1<n1;i1++)
{
for(i2=0;i2<n2;i2++)
{
i=i1+i2;
a[i]=a[i]+s1[i1]*s2[i2];
if (i>e) e=i;
}
for(i=0;i<=e+10;i++) {a[i+1]+=a[i]/10;a[i]%=10; }
}e+=10;
for(i=e;i>=0;i--) if(a[i]==0) continue; else { e=i; break; }

}

void change(__int64 k)
{
i=0;
while(k>0) { s[i]=k%10; k/=10; i++; }
knum=i;
}
int main()
{
int cases,n;
__int64 k,t;
scanf("%d",&cases);
while(cases--)
{
scanf("%I64d%d",&k,&n);
if(k==0) { printf("0\n");continue; }
if(n==1) { printf("%I64d\n",k);continue; }
if(k<0 && (n%2==1) ) printf("-");
if(k<0) k=-k;
memset(s,0,sizeof(s));
memset(a,0,sizeof(a));
change(k);

for(i=0;i<knum;i++) a[i]=s[i];t=n-1;e=knum-1;
while(t>0)
{
t--;
for(i=0;i<=e;i++) b[i]=a[i];
cal(knum,e+1,s,b);
}

for(i=e;i>=0;i--) printf("%I64d",a[i]);
cout<<endl;
}

return 0;
}

分享到:
评论

相关推荐

    ACM练习题ACM各种练习题ACM各种练习题ACM各种练习题

    ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM各种练习题ACM...

    ACM竞赛数学基础题

    ACM竞赛数学基础题,新手请下载练练手!下载了就不会后悔的!

    北大acm_p1001试题c++版

    【标题】"北大acm_p1001试题c++版"所指的是一道源自北京大学ACM(国际大学生程序设计竞赛)的编程题目,它使用C++语言编写。ACM竞赛是全球知名的大学生编程比赛,旨在提升参赛者的算法设计、问题解决以及编程能力。...

    基于C++实现的ACM-ACM竞赛常用模板

    这个“基于C++实现的ACM竞赛常用模板”是一个集成了ACM比赛常见问题解决方案的代码库,可以帮助参赛者快速理解和解决各种竞赛题目。 首先,模板通常包括基础数据结构和算法的实现,例如: 1. **排序算法**:快速...

    ACM_竞赛试题

    算法实现语言主要包括 C、C++、Java、Python 等。 (3)算法执行效率 算法执行效率主要包括算法的时间复杂度、空间复杂度和算法的可读性等。 四、ACM 竞赛试题实践 ACM 竞赛试题实践是 ACM 竞赛试题的重要组成...

    老少皆宜ACM数学题

    初 学 者 可 以 下 来 看 看, ,可 能 会 有 帮 助

    ACM大量习题题库 - 编程小区 - C++博客.url

    ACM大量习题题库 - 编程小区 ,在线题库

    ACM ICPC程序设计与分析(C++实现)

    《ACM ICPC程序设计与分析(C++实现)》是一本专为参与ACM国际大学生程序设计竞赛(International Collegiate Programming Contest, 简称ICPC)的参赛者及对此领域感兴趣的程序员编写的指导书籍。书中深入探讨了在...

    ACM程序设计 简单数学题

    在ACM程序设计竞赛中,简单的数学题是参赛者必须掌握的重要知识点之一。这些题目往往涉及到基础数学概念,如算术、代数、几何、组合数学以及初等数论等,有时还会融入概率论和图论等进阶概念。本资源包含的"HDUACM...

    2010北大ACM暑期讲义数学题.pdf

    ### 2010北大ACM暑期讲义数学题 #### 数学问题在ACM竞赛中的应用 在ACM竞赛中,数学问题扮演着至关重要的角色。这些数学问题既可以是纯粹的数学题目,也可以与其他类型的计算机科学问题相结合,形成复合型问题。...

    C++ ACM 离线题库超级全

    《C++ ACM 离线题库超级全》是一份专为ACMer设计的资源集合,包含了大量的离线编程题目,特别适合在无网络环境下进行训练。这份资源涵盖了杭电OJ(杭州电子科技大学在线评测系统)和北大OJ(北京大学在线评测系统)...

    (HDUACM201403版_02)简单数学题

    杭电ACM课件2014版之 (HDUACM201403版_02)简单数学题

    ACM集训+真题+讲解+ACM集训+真题+讲解

    ACM集训+真题+讲解+算法+代码模板库+视频 ACM集训+真题+讲解+算法+代码模板库+视频 ACM集训+真题+讲解+算法+代码模板库+视频 ACM集训+真题+讲解+算法+代码模板库+视频 ACM集训+真题+讲解+算法+代码模板库+视频 ...

    ACM-ACM竞赛常用模板-C++.zip

    总之,ACM竞赛的C++模板涵盖了算法、数据结构、数学等多个方面,通过深入学习和实践,可以大大提高解题能力和竞争力。每个模板背后都是一系列理论知识和实践经验的结晶,值得每一个参赛者去探索和掌握。

    ACM中文译题

    而"ACM必做50题的解题-高精度.doc"、"ACM必做50题的解题-数学.doc"、"ACM必做50题的解题-模拟.doc"、"ACM必做50题的解题-搜索.doc"这四个文档则分别聚焦于高精度计算、数学、模拟和搜索这四类算法,为学习者提供了...

    acm课件简单数学题(杭电)(HDU)

    本课件"acm课件简单数学题(杭电)(HDU)"正是针对这一领域的一份宝贵资源,旨在提升参赛者解决数学问题的能力,从而在ACM竞赛中提高AC(Accepted,即正确解答)题目的效率。 课件中包含的“简单数学题090223.ppt...

    acm程序设计 c++实现

    详细讲述了acm的编程及各种算法知识,书中代码全部用c++实现,对c++泛型编程也有着极大地帮助

    acmacm经典题库

    3. **编写代码**:用C++、Java、Python等编程语言实现算法,注意时间空间复杂度的控制,以满足比赛的效率要求。 4. **调试与测试**:对代码进行详尽的测试,确保能够处理各种边界情况和异常情况。 5. **提交与验证...

    北大acm在线测试题源码

    【北大ACM在线测试题源码】是一组用于理解和学习算法竞赛编程的代码集合,源自北京大学(Peking University)的在线评测系统(Online Judge,简称OJ)。这个系统的全称可能是"北大算法竞赛在线评测系统",在acm.pku....

    ACM考试题 ACM程序设计

    ### ACM程序设计基础知识点 #### 一、ACM竞赛概览 - **组织机构与活动**: 本课程由东北林业大学陈宇老师负责,通过邮箱Lg_chenyu@yahoo.com.cn进行联系。课程的主要目的是介绍ACM程序设计的基础概念及入门技巧。 - ...

Global site tag (gtag.js) - Google Analytics