1001WA
时间关系只实现了其中一部分的功能 现在的程序可以实现一个大数的平方

#include <stdio.h>
#include <string.h>
void mypower(int num2);
int findflag();
int myflag = ;
char num1[];
int num2;
char a[] = {};
char b[] = {};
int c[] = {};
int d[] = {};
int main(void)
{
scanf("%s%d",num1,&num2);
myflag = findflag();
mypower(num2);
return ;
} void mypower(int num2)
{
int i,j,k,s;
for(s = ;s < num2;s++)
{
memset(c,,sizeof(c));
if(b[] == '\0')
{
for(i = ;a[i] != '\0';i++)
{
b[i] = a[i];
}
}
for(i = ;a[i] != '\0';i++)
for(j =;b[j] != '\0';j++)
{
c[i+j] += (a[i] - '') * (b[j] - ''); }
for(k = i+j-;k > ;k--)
{
d[k] = (c[k-] % );
c[k-] += c[k-] /;
}
d[] = (c[] / );
d[] = (c[] % );
if(d[] != )
{
for(k = ;k < i+j;k++)
b[k] = d[k];
}else
{
for(k = ;k < i+j;k++)
b[k-] = d[k];
} }
myflag *= num2;
if(d[] != )
{
for(s =;s < myflag;s++)
{
b[i+j-s] = b[i+j--s];
b[i+j--s] = '.';
}
for(i = ;i<k+;i++)
{
if(b[i] == '.')
{
printf("%c",b[i]);
continue;
}
printf("%d",b[i]);
}
}else
{
for(s =;s < myflag;s++)
{
b[i+j--s] = b[i+j--s];
b[i+j--s] = '.';
}
for(i = ;i<k;i++)
{
if(b[i] == '.')
{
printf("%c",b[i]);
continue;
}
printf("%d",b[i]);
}
} } int findflag()
{
int i,j,flag = ;
for(i = ;num1[i] != '\0';i++)
{
if(num1[i] == '.')
{
flag = i;
continue;
}
a[j++] = num1[i];
}
flag = j - flag;
return flag;
}
1001WA的更多相关文章
随机推荐
- LeetCode (13): 3Sum Closest
https://leetcode.com/problems/3sum-closest/ [描述] Given an array S of n integers, find three integers ...
- zzuoj 10408: C.最少换乘【最短路dijkstra】
10408: C.最少换乘 Time Limit: 2 Sec Memory Limit: 128 MBSubmit: 31 Solved: 8[Submit][Status][Web Board ...
- PHP学习之[第11讲]新浪微博开放平台 PHP 与 OAuth 接口(1)
我是下载的微博最新的API练习了一下认证过程.
- 如何提高Lucene构建索引的速度
如何提高Lucene构建索引的速度 hans(汉斯) 2013-01-27 10:12 对于Lucene>=2.3:IndexWriter可以自行根据内存使用来释放缓存.调用writer.set ...
- 实战:sqlserver 数据实时同步到mysql
1.安装安装mysqlconnector 2.配置mysqlconnector ODBC数据管理器->系统DSN->加入->mysql ODBC 5.3 ANSI driver-&g ...
- Lucene中string docvalues使用utf-16的优化
原来的string docvalues使用utf-8编码,载入时转码花费大量时间,我们把转码实现从new String(bytes, "UTF-8")改用lucene的bytesR ...
- 使用Tcl脚本分配FPGA管脚
自己主动生成Tcl文件 Project -> Generate Tcl File for Project... 弹出例如以下对话框.设置脚本路径. 编辑引脚 使用set_location_ass ...
- SpringMVC10数据验证
/** * @NotBlank 作用在String * @NotEmpty 作用在集合上 * @NotNull 作用在基本数据类型上 * */ public class User { @NotNull ...
- visual studio中的一些实用的快捷键
重置开发环境:使得开发工具恢复默认状态 方法:工具->导入和导出设置导向->重置所有设置->不保存 显示行号: 方法:工具->选项->所有语言->行号 在编程过程中 ...
- python3下的super()
大家都知道super是用来解决python钻石多重继承出现的基类重复调用的问题,这个就不赘述了,不了解的请点击. 但是我发现还有个问题在于不是钻石继承时继承先后顺序的问题,也就是如果mixin与继承的 ...