欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

poj 1001 Exponentiation

系統(tǒng) 1793 0
Time Limit: 500MS Memory Limit: 10000K
Total Submissions: 71191 Accepted: 16721

??? 本題總的來說并不是很難,但是卻很麻煩,我在北大上做題時(shí)wrong了n次,最終總算通過了,我不知道大牛們是怎么做的,但是我的做法的確是很麻煩

??? 思想是:就是將輸入的自然數(shù)a去掉小數(shù)點(diǎn)后,然后進(jìn)行n次大整數(shù)相乘,每次的乘數(shù)是輸入以后去掉小數(shù)點(diǎn)的a,被乘數(shù)是前面乘過以后的結(jié)果。在結(jié)束完n次以后將小數(shù)點(diǎn)加到合適的位置,并進(jìn)行前后的除零。

代碼:

?

      
1 #include < stdio.h >
2 #include < string .h >
3 ? int main()
4 {
5 int i,j,sum,k,res[ 500 ][ 500 ],flag = 0 ,b,dox,mark,deadline,t;
6 char result[ 500 ],a[ 65 ],tran[ 500 ];
7 while (scanf( " %s " ,a) != EOF)
8 {
9 sum = 0 ;k = 0 ;dox = 0 ;mark = 0 ;
10 memset(result, 0 , sizeof (result));
11 result[ 0 ] = ' 1 ' ;
12 getchar();
13 scanf( " %d " , & b);
14 int len1 = strlen(a);
15 if (a[ 0 ] == ' 0 ' )
16 {
17 for (i = 2 ;a[i] != ' \0 ' ;i ++ )
18 a[i - 2 ] = a[i];
19 len1 -= 2 ;
20 dox = len1;
21 a[len1] = ' \0 ' ;
22 }
23 else
24 {
25 for (i = 0 ;a[i] != ' \0 ' ;i ++ )
26 {
27 if (a[i] == ' . ' )
28 {
29 mark = 1 ;
30 len1 -- ;
31 continue ;
32 }
33 if (mark)
34 {
35 a[i - 1 ] = a[i];
36 dox ++ ;
37 }
38 }
39 a[len1] = ' \0 ' ;
40 }
41 for (t = 1 ;t <= b;t ++ )
42 {
43 memset(res, 0 , sizeof (res));
44 int len2 = strlen(result);
45 strcpy(tran,result);
46 for (i = 0 ;i < len2;i ++ )
47 result[i] = tran[len2 - 1 - i];
48 k = 0 ;sum = 0 ;
49 for (i = 0 ;i < len1;i ++ )
50 for (j = 0 ;j < len2;j ++ )
51 res[i][j] = (a[i] - ' 0 ' ) * (result[j] - ' 0 ' );
52 for (i = len1 - 1 ;i >= 0 ;i -- )
53 {
54 for (j = len2 - 1 ;j >= 0 ;j -- )
55 sum = sum + res[i + len2 - j - 1 ][j];
56 result[k] = sum % 10 + ' 0 ' ;
57 k = k + 1 ;
58 sum = sum / 10 ;
59 }
60 for (i = len2 - 2 ;i >= 0 ;i -- )
61 {
62 for (j = 0 ;j <= i;j ++ )
63 sum = sum + res[i - j][j];
64 result[k] = sum % 10 + ' 0 ' ;
65 k = k + 1 ;
66 sum = sum / 10 ;
67 }
68 if (sum != 0 )
69 {
70 result[k] = sum + ' 0 ' ;k = k + 1 ;
71 }
72 }
73 dox = dox * b;
74 int len = strlen(result);
75 if (dox != 0 )
76 {
77 if (dox <= len - 1 )
78 {
79 for (i = len - 1 ;i >= dox;i -- )
80 result[i + 1 ] = result[i];
81 result[dox] = ' . ' ;
82 len ++ ;
83 }
84 else
85 {
86 result[dox] = ' . ' ;
87 for (i = dox - 1 ;i > len - 1 ;i -- )
88 result[i] = ' 0 ' ;
89 }
90 }
91 deadline = 0 ;
92 len = len - 1 > dox ? len - 1 :dox;
93 for (i = 0 ;i <= len;i ++ )
94 {
95 if (result[i] != ' 0 ' )
96 {
97 if (result[i] == ' . ' )
98 deadline = i + 1 ;
99 else
100 deadline = i;
101 break ;
102 }
103 }
104 mark = 0 ;
105
106 for (i = len;i >= deadline;i -- )
107 if (mark == 1 || result[i] != ' 0 ' )
108 {
109 mark = 1 ;
110 printf( " %c " ,result[i]);
111 }
112 printf( " \n " );
113 }
114 return 0 ;
115 }
116

???? (注意:) 我在之前wrong了幾次,主要是少考慮了幾種情況,經(jīng)過某位大牛的指點(diǎn)才能通過,此大牛給出的例子是 :

??????????????????? 4.000 2? 結(jié)果應(yīng)該是16 并非16.

?????????????????? ?10.000 2 結(jié)果應(yīng)該是100 并非是1或者100.

poj 1001 Exponentiation


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 亚洲国产精品第一页 | 一级毛片免费播放 | 暴操美女视频 | 亚洲免费av在线 | 天天干天天插天天操 | 欧美一线免费http | 亚洲欧美爱爱 | 国产伦理一区二区三区 | 一级成人毛片免费观看欧美 | lutube成人福利在线观看污 | 成人久草 | 日本一区二区三区免费高清在线 | 成人18免费视频 | 日韩在线视频精品 | 欧美亚洲一区二区三区四区 | 九七婷婷狠狠成人免费视频 | 亚洲成人av | 97国产精品 | 99久久久久久 | 久久99视频精品 | 午夜成人免费视频 | 欧美日韩欧美日韩 | www.久久久.com | 欧美一区二区三 | 中国女人内谢69xxxx天美 | 日本一区二区三区精品国产 | 欧美高清国产 | 成人毛片18岁女人毛片免费看 | 成人午夜在线观看 | 久久99免费视频 | 亚洲产国偷V产偷V自拍A片 | 无码又黄又爽又舒服的A片 综合久久网 | 久久日本精品一区二区三区 | 看免费黄色大片 | 首页亚洲国产丝袜长腿综合 | 一级色黄 | 久久亚洲精品中文字幕 | 日本福利一区二区 | 免费成人电影在线 | 很黄很色的小视频在线网站 | 欧美国产另类 |