結果
| 問題 |
No.2086 A+B問題
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2022-09-30 21:57:04 |
| 言語 | C++23 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 1,378 bytes |
| コンパイル時間 | 4,546 ms |
| コンパイル使用メモリ | 262,048 KB |
| 最終ジャッジ日時 | 2024-12-22 23:33:11 |
| 合計ジャッジ時間 | 4,954 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/usr/bin/ld: /tmp/ccul5feO.o: in function `main': main.cpp:(.text.startup+0x54): undefined reference to `__libc_dlopen_mode' /usr/bin/ld: main.cpp:(.text.startup+0x66): undefined reference to `__libc_dlsym' /usr/bin/ld: main.cpp:(.text.startup+0x7c): undefined reference to `__libc_dlsym' /usr/bin/ld: main.cpp:(.text.startup+0x92): undefined reference to `__libc_dlsym' /usr/bin/ld: main.cpp:(.text.startup+0xa8): undefined reference to `__libc_dlsym' /usr/bin/ld: main.cpp:(.text.startup+0xbe): undefined reference to `__libc_dlsym' /usr/bin/ld: main.cpp:(.text.startup+0x145): undefined reference to `__libc_dlclose' collect2: error: ld returned 1 exit status
ソースコード
#pragma GCC target("avx2")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include<bits/stdc++.h>
using namespace std;
extern "C"{
void*__libc_dlopen_mode(const char*x,int y);
void*__libc_dlsym(void*x,const char*y);
int __libc_dlclose(void*x);
}
#include "gmp.h"
typedef void (*type_mpz_init)(mpz_t);
typedef void (*type_mpz_inp_str)(mpz_t,FILE*,int);
typedef void (*type_mpz_add)(mpz_t,mpz_t,mpz_t);
typedef void (*type_mpz_out_str)(FILE*,int,mpz_t);
typedef void (*type_mpz_clear)(mpz_t);
type_mpz_init mympz_init;
type_mpz_inp_str mympz_inp_str;
type_mpz_add mympz_add;
type_mpz_out_str mympz_out_str;
type_mpz_clear mympz_clear;
int main(){
FILE*stdin=fopen("/dev/stdin","r");
FILE*stdout=fopen("/dev/stdout","w");
void *H=__libc_dlopen_mode("/usr/lib64/libgmp.so.10",2);
mympz_init=(type_mpz_init)__libc_dlsym(H,"__gmpz_init");
mympz_inp_str=(type_mpz_inp_str)__libc_dlsym(H,"__gmpz_inp_str");
mympz_add=(type_mpz_add)__libc_dlsym(H,"__gmpz_add");
mympz_out_str=(type_mpz_out_str)__libc_dlsym(H,"__gmpz_out_str");
mympz_clear=(type_mpz_clear)__libc_dlsym(H,"__gmpz_clear");
mpz_t a,b,c;
mympz_init(a);
mympz_init(b);
mympz_init(c);
mympz_inp_str(a,stdin,10);
mympz_inp_str(b,stdin,10);
mympz_add(c,a,b);
mympz_out_str(stdout,10,c);
mympz_clear(a);
mympz_clear(b);
mympz_clear(c);
__libc_dlclose(H);
}