Submission #726880

#TimeUsernameProblemLanguageResultExecution timeMemory
726880gagik_2007The Collection Game (BOI21_swaps)C++17
50 / 100
61 ms448 KiB
#include "swaps.h"
#include <iostream>
#include <algorithm>
#include <string>
#include <vector>
#include <cmath>
#include <chrono>
#include <ctime>
#include <set>
#include <map>
#include <stack>
#include <queue>
#include <deque>
#include <limits>
#include <iomanip>
#include <unordered_set>
#include <unordered_map>
#include <fstream>
#include <functional>
#include <random>
#include <cassert>
using namespace std;

typedef long long ll;
typedef long double ld;

#define ff first
#define ss second

ll ttt;
const ll INF = 1e18;
const ll MOD = 1e9 + 7;
const ll N = 200007;
ll n, m;
int val[N];

void solve(int NN, int VV) {
	vector<int>p;
	n = NN;
	if (n == 1) {
		answer({ 1 });
		return;
	}
	for (int i = 1; i <= n; i++) {
		val[i] = i;
	}
	int cl = 1;
	for (int c = 0; c < n; c++) {
		int l = cl;
		vector<pair<int, int>>s;
		while (l + 1 <= n) {
			schedule(val[l], val[l + 1]);
			s.push_back({ l,l + 1 });
			l += 2;
		}
		vector<int>d = visit();
		for (int i = 0; i < s.size(); i++) {
			if (d[i] == 0) {
				swap(val[s[i].ff], val[s[i].ss]);
			}
		}
		if (cl == 2) {
			cl = 1;
		}
		else {
			cl = 2;
		}
	}
	for (int i = 1; i <= n; i++) {
		p.push_back(val[i]);
	}
	answer(p);
}

Compilation message (stderr)

swaps.cpp: In function 'void solve(int, int)':
swaps.cpp:57:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   57 |   for (int i = 0; i < s.size(); i++) {
      |                   ~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...