質問編集履歴

1

質問内容の変更

2020/05/23 06:56

投稿

grape_ll
grape_ll

スコア83

test CHANGED
File without changes
test CHANGED
@@ -40,4 +40,66 @@
40
40
 
41
41
  ### 質問内容
42
42
 
43
+ 下記のように計算したら実行時間がオーバーしてしまいました。
44
+
45
+
46
+
47
+ ### コード
48
+
49
+ ```C
50
+
51
+ #include<stdio.h>
52
+
53
+ int main(void){
54
+
55
+ int n;
56
+
57
+ scanf("%d",&n);
58
+
59
+ int order[80]={9};
60
+
61
+ int flag[80]={0};
62
+
63
+ int i;
64
+
43
- long long くらいの大きさでの範囲でなら解けるのですが,79桁まで大きいとどう対処していいのか分からないです。
65
+ while(order[n]==0&&order[n+1]==0){
66
+
67
+ for(i=0;i<n;i++){
68
+
69
+ order[i]*=3;
70
+
71
+ order[i]+=flag[i];
72
+
73
+ flag[i]=0;
74
+
75
+ if(order[i]>9){
76
+
77
+ flag[i+1]+=order[i]/10;
78
+
79
+ order[i]%10;
80
+
81
+ }
82
+
83
+ }
84
+
85
+ i++;
86
+
87
+ }
88
+
89
+
90
+
91
+ for(i=n-1;i>=0;i--){
92
+
93
+ printf("%d",order[i]);
94
+
95
+ }
96
+
97
+ printf("\n");
98
+
99
+ return 0;
100
+
101
+
102
+
103
+ }
104
+
105
+ ```