1464
コメント:
|
732
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 2: | 行 2: |
== AOJ解答 == . 最終的にAcceptedとなった回答です。 |
== 未解決問題 == 第11行目の有無によって第18行目の出力が異なります。 なぜでしょう?-- [[rei05]] <<DateTime(2012-07-11T13:47:51+0900)>> |
行 5: | 行 5: |
. ここはこうした方がいいなど改善すべき点がありましたら是非ご教授お願いします。 * [[/10020]] * [[/10021]] * [[/10022]] * [[/10023]] * [[/10024]] * [[/10025]] * [[/10026]] * [[/10027]] * [[/10028]] * [[/10030]] * [[/10031]] == Help Me! == === 未解決 === * AOJ10029番 Time Limit Exceeded * http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=10029 * [[/Discussion]] * クイックソートで書いてみましたがTime Limit Exceeded。おかしな箇所を教えてください。-- [[rei05]] <<DateTime(2012-06-01T16:54:19+0900)>> |
信心が足りないということでは? -- hiyakashi <<DateTime>> |
行 30: | 行 8: |
#include <stdio.h> | #include<stdio.h> #include<math.h> |
行 32: | 行 11: |
void Sort(int num[],int left,int right); | int main(){ double ans=100000; int n,i; |
行 34: | 行 15: |
int main() { int n,i; scanf("%d",&n); int num[n]; |
scanf("%d",&n); |
行 40: | 行 17: |
for(i=0;i<n;i++) scanf("%d",&num[i]); |
for(i=0;i<n;i++){ printf("%f\n",fmod(ans*1.05,1000)); if(fmod(ans*1.05,1000)==0) ans*=1.05; else ans=ans*1.05-fmod(ans*1.05,1000)+1000; } |
行 43: | 行 25: |
Sort(num,0,n-1); for(i=0;i<n;i++) printf("%d ",num[i]); printf("\n"); return(0); } void Sort(int num[],int left,int right) { int i,j,temp; int center=(left+right)/2; while(1){ i=left; j=right; while(num[i]<num[center]) i++; while(num[center]<num[j]) j--; if(i==j) break; if(num[i]==num[j]){ i++; if(i==j) break; } temp=num[i]; num[i]=num[j]; num[j]=temp; } if(center-left>=2) Sort(num,left,center-1); if(right-center>=2) Sort(num,center+1,right); |
printf("%d\n",(int)ans); return 0; |
C言語
未解決問題
第11行目の有無によって第18行目の出力が異なります。 なぜでしょう?-- rei05 2012-07-11 13:47:51
信心が足りないということでは? -- hiyakashi 2024-03-19 15:16:48
1 #include<stdio.h>
2 #include<math.h>
3
4 int main(){
5 double ans=100000;
6 int n,i;
7
8 scanf("%d",&n);
9
10 for(i=0;i<n;i++){
11 printf("%f\n",fmod(ans*1.05,1000));
12 if(fmod(ans*1.05,1000)==0)
13 ans*=1.05;
14 else
15 ans=ans*1.05-fmod(ans*1.05,1000)+1000;
16 }
17
18 printf("%d\n",(int)ans);
19 return 0;
20 }