• VNOJ
  • Trang chủ
  • Danh sách bài
  • Các bài nộp
  • Thành viên
    >
    • Tổ chức
  • Các kỳ thi
  • Wiki
  • Thông tin
    >
    • FAQ
    • Trình chấm ngoài
    • Tag
    • Máy chấm
    • Devlog
    • Github
    • Tickets
    • Thư viện đề thi
    • Đề xuất contest
  • Tạp chí
VI EN Đăng nhập  hoặc  Đăng ký

Blog - Trang 1

  • Thông tin
  • Thống kê
  • Blog

1

Chủ đề sinh test

MnhatBeo đã đăng vào 20, Tháng 12, 2025, 15:14

Mẹo sinh test cực nhanh

Bình thường các bạn làm bài như nào thì cứ làm như thế(tạo project xog add INP và OUT rồi làm)
Khi muốn sinh test và so sánh code trâu và code full thì tạo 1 folder mới
- Tạo file main_trau.cpp và dán code trâu vào
- Tạo file main.cpp và dán code full vào
- Tạo file test.cpp và code sinh test(có thể đọc ở dưới blog của tôi)
Sử dụng lệnh cmd để build file cpp ra exe:
** ĐỂ CHẠY NHANH THÌ CÁC BẠN COPY HẾT CẢ 3 DÒNG VÀ CLICK CHUỘT PHẢI VÀO CMD, KHÔNG PHẢI COPY TỪNG DÒNG 1 VÀ CHẠY TỪNG LỆNH 1

g++ test.cpp -o test
g++ main.cpp -o main
g++ main_trau.cpp -o main_trau

Cuối cùng là chạy test.exe
MnhatBeo
o20, Tháng 12, 2025, 15:14 2

5

Debug bằng cách cout cho những người lười như tôi :v

MnhatBeo đã đăng vào 6, Tháng 12, 2025, 1:45

code:

#define cel                 cout<<'\n'
#define dbg(...)            [](auto&&...x) {int i=0; ((ct<<(i++?" " : "")<<x),...),cel;} (__VA_ARGS__)

khi gọi dbg() và thêm các tham số vào dấu ngoặc đồng thời ngăn cách bởi dấu ',' thì hàm sẽ in hết các giá trị ra màn hình cách nhau bởi dấu cách sau đó xuống dòng

MnhatBeo
o6, Tháng 12, 2025, 1:45 0

-6

Sinh test C++ cực mạnh =))))

MnhatBeo đã đăng vào 17, Tháng 6, 2025, 7:53

?

/*

        AUTHOR: Ng Minh Nhat

*/
#include <bits/stdc++.h>
using namespace std;

// IO
#define cn                  cin
#define ct                  cout
#define en                  ' '
#define el                  '\n'
#define cen                 ct<<en
#define cel                 ct<<el
#define fastIO              cn.tie(0)->sync_with_stdio(0);
#define execute             cerr<<"Time: "<<(1.0* clock()/CLOCKS_PER_SEC)<<"s";
#define dbg(...)            [](auto&&...args) {int i=0; ((ct<<(i++?" " : "")<<args), ...),cel;}(__VA_ARGS__)
#define file(name)          if (fopen(name".INP","r")) {freopen(name".INP","r",stdin); freopen(name".OUT","w",stdout);}
// STL
#define fi                  first
#define se                  second
#define sz                  size()
#define rsz                 resize
#define sqr(x)              (ll)x*x
#define ep                  emplace
#define mp                  make_pair
#define eb                  emplace_back
#define all(x,i)            x.begin()+i, x.end()
#define FORA(i,a)           for(auto i:a)
#define FOR(i,a,b)          for(int i=(int) a; i<=(int) b; ++i)
#define FOD(i,b,a)          for(int i=(int) b; i>=(int) a; --i)
#define FOE(i,a,b)          for(int i=(int) a; i*i<=(ll) b; ++i)
// Types
#define ll                  long long
#define vi                  vector<int>
#define vb                  vector<bool>
#define vll                 vector<ll>
#define pii                 pair<int,int>
#define pll                 pair<ll,ll>
// Bit
#define bl(x,i)             (x<<i)
#define br(x,i)             (x>>i)
#define bb(n,x)             (br(n,x)&1)
#define gb(n,x)             (n&bl(1,x))
// Const
#define base                31
#define maxN                100050
#define maxn                1000300
#define maxp                10000007
#define MOD                 1000000007

mt19937_64 rng(chrono::steady_clock::now().time_since_epoch().count());
ll rd(ll l, ll r) {
    return uniform_int_distribution<ll> (l,r)(rng);
}

void make() {
    ofstream ct("main.INP");
    ll a=rd(1,1e18), b=rd(1,1e18);
    ct<<a<<en<<b;
}

int main() {
    fastIO
    file("TEST")

    int nTest=1;
    while (nTest--) {
        make();
        system("main.exe");
        system("main_trau.exe");
        if (system("fc main.OUT main.ANS")!=0) {
            ct<<"WRONG",cel;
            return 0;
        }
        ct<<"AC",cel;
    }

//    execute
    return (0 ^ 0);
}
MnhatBeo
o17, Tháng 6, 2025, 7:53 0

0

Mnhat va nhung noi buon

MnhatBeo đã đăng vào 18, Tháng 2, 2025, 14:31

Kiểu là 0 có j để nói hết á.. Nhưng mà chào mừng bạn đến vs profile của mình nheee :u7533:

MnhatBeo
o18, Tháng 2, 2025, 14:31 0

dựa trên nền tảng DMOJ | theo dõi VNOI trên Github và Facebook