#include<bits/stdc++.h>
using namespace std;
int flag;
string intToA(int n,int radix){
flag=-1;
if(n<0){
flag=1;
n=-n;
}
string ans="";
do{
int t=n%radix;
if(t>=0&&t<=9) ans+=t+'0';
else ans+=t-10+'A';
n/=radix;
}while(n!=0);
reverse(ans.begin(),ans.end());
return ans;
}
int main(){
int n,m;
while(cin>>n>>m){
string a=intToA(n,m);
if(flag==1) cout<<'-';
cout<<a<<endl;
}
return 0;
}
OJ地址:http://47.96.116.66/index.php
注意账号需要向教练申请
1101 问题 L: 零基础学C/C++101——最大数与数列最后一个数交换http://47.96.116.66/problem.php?cid=2894&pid=11
#include<iostream>
using namespace std;
int main(){
int n;
while(cin>>n){
int a[110]={},max0=-1,post0=-1;
for(int i=1;i<=n;i++){
cin>>a[i];
if(max0<a[i]){
max0=a[i];
post0=i;
}
}
swap(a[n],a[post0]);
for(int i=1;i<=n;i++)
cout<<a[i]<<" ";
cout<<endl;
}
return 0;
}
1106 问题 M: 零基础学C/C++106——进制转换http://47.96.116.66/problem.php?cid=2894&pid=12
#include<bits/stdc++.h>
using namespace std;
int flag;
string intToA(int n,int radix){
flag=-1;
if(n<0){
flag=1;
n=-n;
}
string ans="";
do{
int t=n%radix;
if(t>=0&&t<=9) ans+=t+'0';
else ans+=t-10+'A';
n/=radix;
}while(n!=0);
reverse(ans.begin(),ans.end());
return ans;
}
int main(){
int n,m;
while(cin>>n>>m){
string a=intToA(n,m);
if(flag==1) cout<<'-';
cout<<a<<endl;
}
return 0;
}
1108 问题 N: 零基础学C/C++108——程序设计竞赛http://47.96.116.66/problem.php?cid=2894&pid=13
#include<bits/stdc++.h>
using namespace std;
int main(){
int n;
while(cin>>n){
int a[100]={};
for(int i=0;i<n;i++)
cin>>a[i];
sort(a,a+n);
for(int i=n-1;i>=0;i--)
cout<<a[i]<<" ";
cout<<endl;
}
return 0;
}