条件编译(debug)

1.

#ifdef 标识符

代码段1

#else

代码段2(可以为空)

#endif (条件编译结束语句,和#ifdef配套使用)

如果标识符被#define过,则编译代码段1,否则编译代码段2

2.

#ifndef 标识符

代码段1

#else

代码段2(可以为空)

#endif (条件编译结束语句,和#ifdef配套使用)

如果标识符没被#define过,则编译代码段1,否则编译代码段2

3.

#if 标识符

代码段1

#else

代码段2(可以为空)

#endif (条件编译结束语句,和#ifdef配套使用)

同方法1

#include <bits/stdc++.h>

#define _DEBUG
using namespace std;

int sum(long long n) 
{
	int res = 0;
	while (n > 0) 
	{
		res += n % 10;
		n /= 10;
	}
	return res;
}

int main() 
{
    
#ifdef _DEBUG
	freopen("input.txt", "r", stdin);
	freopen("output.txt", "w", stdout);
#endif
	
	int t;
	cin >> t;
	while (t--) {
		long long n;
		int s;
		cin >> n >> s;
		long long ans = 0;
		if (sum(n) <= s) {
			cout << 0 << endl;
			continue;
		}
		long long pw = 1;
		for (int i = 0; i < 18; ++i) {
			int digit = (n / pw) % 10;
			long long add = pw * ((10 - digit) % 10);
			n += add;
			ans += add;
			if (sum(n) <= s) {
				break;
			}
			pw *= 10;
		}
		cout << ans << endl;
	}
	
	return 0;
}
原文地址:https://www.cnblogs.com/forward-985/p/13634246.html