#include <bits/stdc++.h>
using namespace std;
const int nx=51;
int n, k, a[nx], mx, h[nx], sm;
vector<pair<int, int>> res;
int main()
{
cin.tie(NULL)->sync_with_stdio(false);
cin>>n>>k;
for (int i=1; i<=n; i++) cin>>a[i], mx=max(mx, a[i]), sm+=a[i];
for (int i=1; i<=n; i++) while (a[i]<mx) res.push_back({1, i}), a[i]+=2;
for (int i=1; i<=n; i++) h[i]=a[i]>mx;
for (int i=1; i<n; i++) if (!h[i]&&!h[i+1]) h[i]++, h[i+1]++, res.push_back({2, i});
for (int i=1; i<=n; i+=2)
{
if (!h[i])
{
res.push_back({1, i});
for (int j=1; j<i; j+=2) res.push_back({2, j});
for (int j=i+1; j<=n; j+=2) res.push_back({2, j});
h[i]=1;
}
}
for (int i=1; i<=n; i++)
{
if (h[i]) h[i]=0;
else h[i]=1, res.push_back({1, i});
}
for (int i=1; i<n; i++) if (!h[i]&&!h[i+1]) h[i]++, h[i+1]++, res.push_back({2, i});
for (int i=1; i<=n; i+=2)
{
if (!h[i])
{
res.push_back({1, i});
for (int j=1; j<i; j+=2) res.push_back({2, j});
for (int j=i+1; j<=n; j+=2) res.push_back({2, j});
h[i]=1;
}
}
cout<<res.size()<<'\n';
for (auto [x, y]:res) cout<<x<<' '<<y<<'\n';
}
/*
6 1
0 0 0 2 2 0
8 2
0 1 0 1 0 1 0 1
*/
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |