题解 | #合唱队#
合唱队
http://www.nowcoder.com/practice/6d9d69e3898f45169a441632b325c7b4
#include<iostream>
#include<vector>
using namespace std;
int main()
{
vector<int>a;
int b;
while(cin>>b)
{
for(int i=0;i<b;i++)
{
int c;
cin>>c;
a.push_back(c);
}
vector<int>w;
for(int i=0;i<b;i++)
{
vector<int>d,g;
d.push_back(a[i]), g.push_back(a[i]);
for(int j=i-1;j>=0;j--)
{
int f=0;
for(int m=0;m<d.size();m++)
{
if(a[j]<d[m]&&a[j]>d[m+1]&&m+1<=d.size()-1)
{
int e=a[j];
swap(d[m+1],e);
f=1;
}
}
if(f==0&&a[j]<d.back())
{
d.push_back(a[j]);
}
}
for(int j=i+1;j<a.size();j++)
{
int h=0;
for(int m=0;m<g.size();m++)
{
if(a[j]<g[m]&&a[j]>g[m+1]&&m+1<=g.size()-1)
{
int e=a[j];
swap(g[m+1],e);
h=1;
}
}
if(h==0&&a[j]<g.back())
{
g.push_back(a[j]);
}
}
int t=d.size()+g.size()-1;
if(t>w.size())
{
w.clear();
for(int k=d.size()-1;k>=0;k--)
{
w.push_back(d[k]);
}
for(int n=1;n<g.size();n++)
{
w.push_back(g[n]);
}
}
}
cout<<b-w.size();
}
return(0);
}
#include<vector>
using namespace std;
int main()
{
vector<int>a;
int b;
while(cin>>b)
{
for(int i=0;i<b;i++)
{
int c;
cin>>c;
a.push_back(c);
}
vector<int>w;
for(int i=0;i<b;i++)
{
vector<int>d,g;
d.push_back(a[i]), g.push_back(a[i]);
for(int j=i-1;j>=0;j--)
{
int f=0;
for(int m=0;m<d.size();m++)
{
if(a[j]<d[m]&&a[j]>d[m+1]&&m+1<=d.size()-1)
{
int e=a[j];
swap(d[m+1],e);
f=1;
}
}
if(f==0&&a[j]<d.back())
{
d.push_back(a[j]);
}
}
for(int j=i+1;j<a.size();j++)
{
int h=0;
for(int m=0;m<g.size();m++)
{
if(a[j]<g[m]&&a[j]>g[m+1]&&m+1<=g.size()-1)
{
int e=a[j];
swap(g[m+1],e);
h=1;
}
}
if(h==0&&a[j]<g.back())
{
g.push_back(a[j]);
}
}
int t=d.size()+g.size()-1;
if(t>w.size())
{
w.clear();
for(int k=d.size()-1;k>=0;k--)
{
w.push_back(d[k]);
}
for(int n=1;n<g.size();n++)
{
w.push_back(g[n]);
}
}
}
cout<<b-w.size();
}
return(0);
}