結果
| 問題 | No.428 小数から逃げる夢 |
| コンテスト | |
| ユーザー |
やまじゅん
|
| 提出日時 | 2017-06-22 17:46:54 |
| 言語 | C (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 1 ms / 1,000 ms |
| コード長 | 1,264 bytes |
| 記録 | |
| コンパイル時間 | 129 ms |
| コンパイル使用メモリ | 30,464 KB |
| 実行使用メモリ | 6,824 KB |
| 最終ジャッジ日時 | 2024-10-02 12:19:43 |
| 合計ジャッジ時間 | 2,641 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 100 |
ソースコード
#include <stdio.h>
void printnum(char *);
int main(void)
{
char before_numbers[191] = "1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991";
char after_numbers[193] = { '\0' };
int n, i, j, temp;
scanf("%d%*c", &n);
for (i = 0; i < 190;i++) {
temp = (before_numbers[189 - i] - 48)*n;
j = 0;
while (temp != 0) {
after_numbers[i + j] += temp % 10;
if (after_numbers[i + j] >= 10) {
after_numbers[i + j] -= 10;
after_numbers[i + j + 1]++;
}
temp /= 10;
j++;
}
}
for (i = 0;i < 193;i++) {
after_numbers[i] += '0';
}
i = 0;
while (after_numbers[192 - i] == '0') {
after_numbers[192 - i] = '\0';
i++;
}
if (after_numbers[190] == '\0') {
printf("0");
printnum(after_numbers);
}
else if (after_numbers[191] == '\0') {
printf("%c", after_numbers[190]);
printnum(after_numbers);
}
else if (after_numbers[192] == '\0') {
printf("%c%c", after_numbers[191], after_numbers[190]);
printnum(after_numbers);
}
return 0;
}
void printnum(char *after_numbers)
{
int i;
printf(".");
for (i = 0;i < 190;i++) {
printf("%c", after_numbers[189 - i]);
}
printf("\n");
}
やまじゅん