結果
| 問題 | 
                            No.8072 Sum of sqrt(x)
                             | 
                    
| ユーザー | 
                             | 
                    
| 提出日時 | 2021-05-03 13:22:12 | 
| 言語 | C  (gcc 13.3.0)  | 
                    
| 結果 | 
                             
                                CE
                                 
                             
                            
                            (最新)
                                AC
                                 
                             
                            (最初)
                            
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 717 bytes | 
| コンパイル時間 | 414 ms | 
| コンパイル使用メモリ | 28,288 KB | 
| 最終ジャッジ日時 | 2024-11-15 01:01:47 | 
| 合計ジャッジ時間 | 13,170 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge3 | 
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
            
            
            
            
            ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/usr/bin/ld: /tmp/ccQVZ95f.o: in function `main': main.c:(.text.startup+0x17): undefined reference to `__libc_dlopen_mode' /usr/bin/ld: main.c:(.text.startup+0x29): undefined reference to `__libc_dlsym' /usr/bin/ld: main.c:(.text.startup+0x3f): undefined reference to `__libc_dlsym' collect2: error: ld returned 1 exit status
ソースコード
#include <stdio.h>
#include <quadmath.h>
void* __libc_dlopen_mode(const char *x,int y);
void* __libc_dlsym(void *x,const char *y);
typedef __float128 (*type_sqrtq)(__float128);
typedef int (*type_quadmath_snprintf)(char *s, size_t size, const char *format, ...);
type_sqrtq mysqrtq;
type_quadmath_snprintf myquadmath_snprintf;
char buf[99];
int main(){
	void *H=__libc_dlopen_mode("/usr/lib64/libquadmath.so",2);
	mysqrtq=(type_sqrtq)__libc_dlsym(H,"sqrtq");
	myquadmath_snprintf=(type_quadmath_snprintf)__libc_dlsym(H,"quadmath_snprintf");
	int T;
	long long x;
	__float128 d=0;
	for(scanf("%d",&T);T--;){
		scanf("%lld",&x);
		d+=mysqrtq(x);
		myquadmath_snprintf(buf,99,"%.16Qg",d);
		puts(buf);
	}
	return 0;
}