2019.9.15バイトジャンプ第4ラウンド筆記試験


Kを超えない3つの数
タイトルの説明:
長さnの配列arrと数kを与え,配列中にk未満の3つの数がどれだけあるか,すなわちarr[a]+arr[b]+arr[c]入力説明:第1の動作は、入力配列の長さを表す整数nである
2番目の動作n個の整数をスペースで区切る
第3の動作の整数k
  • 出力記述
  • 1つの整数mは、条件に合致する3元グループがどれだけあるかを表す.
    入力
    6
    -2 0 1 2 3 6
    しゅつりょく
    4
    説明
    4つの三元グループの和が2未満である.
    [-2,0,1]
    [-2,0,2]
    [-2,0,3]
    [-2,1,2]
    #include
    #include
    #include
    using namespace std;
    int main() {
    	int n;
    	cin >> n;
    	vector data(n, 0);
    	int x;
    	for (int i = 0; i < n; i++) {
    		cin >> x;
    		data[i] = x;
    	}
    	int k;
    	cin >> k;
    	sort(data.begin(), data.end());
    	int cnt = 0;
    	for (int r = data.size() - 1; r >= 2; r--) {
    		int l = 0, m = r - 1;
    		while (l < m) {
    			int sum = data[r] + data[m] + data[l];
    			if (sum >= k) {
    				m--;
    			}
    			else {
    				cnt += m - l;
    				l++;
    			}
    		}
    	}
    	cout <

    ファイル転送
    サーバはデータバックアップ中で、ファイルを転送する必要があります.任意の時間に1つのファイルしか転送できません.1つのファイルの転送には1秒かかります.nバッチファイルが存在し、このバッチファイルが転送キューに追加された時間t(単位/秒)、およびこのバッチファイルの個数cが知られている.
    転送キューのファイルは1秒に1つの熟読で転送されますが、ファイルの転送を担当している学生は、すべてのファイルが転送された時刻と、胡キューのファイルの最大スタック数を伝えたいと思っています.
    説明を入力:
    最初の行はnバッチファイルを表す整数です.次に、n行の各行の2つの整数t,cは、このファイルがキューに追加された時間と、このファイルの個数を表す.
    出力の説明:
    1行2つの整数を出力し、すべてのファイルが転送された時刻と転送キュー内のファイルスタックセットの最大数を出力します.
    例:
    入力:

    1 1
    2 1
    3 1
    出力:
    4 1
    入力:
    3
    1 3
    2 3
    3 3
    しゅつりょく
    10 7
    #include
    #include
    using namespace std;
    int main() {
    	int N;
    	cin >> N;
    	int time, n;
    	queue q;
    	int max_n = 0;
    	int t = 1;
    	for (int i = 0; i < N; i++) {
    		cin >> time >> n;
    		int k = 1;
    		if (!q.empty()) {
    			k = q.back();
    		}
    		int timedis = time - k;
    		while (!q.empty() && timedis > 0) {
    			q.pop();
    			timedis--;
    		}
    		for (int i = 0; i < n; i++) {
    			q.push(time);
    		}
    		max_n = max(max_n, (int)q.size());
    		t = max(t, time);
    	}
    	t += q.size();
    	cout << t << ' ' << max_n;
    }