結果
| 問題 | No.1464 Number Conversion | 
| コンテスト | |
| ユーザー |  pengin_2000 | 
| 提出日時 | 2022-10-03 12:07:33 | 
| 言語 | C (gcc 13.3.0) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 1 ms / 2,000 ms | 
| コード長 | 508 bytes | 
| コンパイル時間 | 1,853 ms | 
| コンパイル使用メモリ | 29,056 KB | 
| 実行使用メモリ | 5,248 KB | 
| 最終ジャッジ日時 | 2024-12-26 19:04:14 | 
| 合計ジャッジ時間 | 2,851 ms | 
| ジャッジサーバーID (参考情報) | judge4 / judge1 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 29 | 
ソースコード
#include<stdio.h>
long long int gcd(long long int a, long long int b)
{
	if (a == 0)
		return b;
	if (b == 0)
		return a;
	long long int r = a % b;
	while (r > 0)
	{
		a = b;
		b = r;
		r = a % b;
	}
	return b;
}
int main()
{
	char x[32];
	scanf("%s", x);
	long long int s, b, i, f;
	s = 0;
	b = 1;
	f = 0;
	for (i = 0; x[i] != '\0'; i++)
	{
		if (x[i] == '.')
			f++;
		else
		{
			s = 10 * s + x[i] - '0';
			if (f > 0)
				b *= 10;
		}
	}
	printf("%lld/%lld\n", s / gcd(s, b), b / gcd(s, b));
	return 0;
}
            
            
            
        