cmy2013 • 1个月前
#include<bits/stdc++.h>
#include<queue>
using namespace std;
long long n,x,y,a[210],ans=0;
priority_queue<int> q;
int main()
{
cin>>n>>x>>y;
if(n>=y)
{
cout<<y;
return 0;
}
for(int i=1;i<=y;i++) cin>>a[i];
sort(a+1,a+1+y);
for(int i=2;i<=y;i++) q.push(a[i]-a[i-1]-1);
for(int i=1;i<n;i++)
{
a[y]-=q.top();
q.pop();
}
cout<<a[y]-(a[1]-0-1);
return 0;
}
评论:
using namespace std; const int N=1e7+10; const int INF=0x3f3f3f3f; int a[500],w,n,ans; char s[500]; int main() {
while(cin>>w>>s>>n)
{
int len=strlen(s),p=0;
for(int i=len-1;i>=0;i--)
{
if(s[i]<='z' && s[i]>='a')
{
ans+=(s[i]-'a'+10)*pow(w,p);
}
else if(s[i]<='Z' && s[i]>='A')
{
ans+=(s[i]-'A'+10)*pow(w,p);
}
else if(s[i]<='9' && s[i]>='0')
{
ans+=(s[i]-'0')*pow(w,p);
}
p++;
}
int l=0;
while(ans!=0)
{
a[++l]=ans%n;
ans/=n;
}
for(int i=l;i>=1;i--)
{
if(a[i]>=10)
{
char hhh='A';
hhh+=a[i]-10;
cout<<hhh;
}
else
{
cout<<a[i];
}
}
cout<<endl;
}
return 0;
}