OJ
来源:互联网 发布:eclipse java oxygen 编辑:程序博客网 时间:2024/05/09 16:50
#include <stdlib.h>
#include <string.h>
#include "oj.h"
/*
功能:字符串处理
输入:两个字符串,需要异常处理
输出:合并处理后的字符串,具体要求参考文档
返回:无
*/
void StringOddEvenSort(char* strSer)
{
int sLen = 0;
char iTemp = 0;
char *strOdd = NULL;
char *strEven = NULL;
if (NULL==strSer)
{
return;
}
sLen = strlen(strSer);
// 奇数项排序
for(int i = 0;i<sLen -2; i+= 2)
{
for(int j =0;j<sLen-2;j+=2)
{
if(strSer[j] > strSer[j+2])
{
iTemp = strSer[j];
strSer[j] = strSer[j+2];
strSer[j+2] = iTemp;
}
}
}
//偶数项排序
for(int i = 1;i<sLen-2;i+= 2)
{
for(int j =1;j<sLen-2;j+=2)
{
if(strSer[j]>strSer[j+2])
{
iTemp = strSer[j];
strSer[j] = strSer[j+2];
strSer[j+2] = iTemp;
}
}
}
}
void BITReverSort(char* pstrSort)
{
int sLen = 0;
int iIndex = 0;
char BIT[16]={'0','8','4','C','2','A','6','E','1','9','5','D','3','B','7','F'};
if(NULL==pstrSort)
{
return;
}
sLen=strlen(pstrSort);
for(int i=0;i<sLen;i++)
{
if(pstrSort[i]>='0'&& pstrSort[i]<='9')
{
iIndex = pstrSort[i] - '0';
pstrSort[i]=BIT[iIndex];
}
else if (pstrSort[i] >='a' && pstrSort[i] <='f')
{
iIndex=pstrSort[i]-'a'+10;
pstrSort[i]=BIT[iIndex];
}
else if(pstrSort[i]>='A' && pstrSort[i]<='F')
{
iIndex=pstrSort[i]-'A'+10;
pstrSort[i]= BIT[iIndex];
}
}
}
void ProcessString(char* str1,char *str2,char * strOutput)
{
int Len1 = 0;
int Len2 = 0;
if (NULL==str1||NULL==str2||NULL==strOutput)
{
return;
}
if ('\0'==*str1 && '\0'==*str2)
{
return;
}
Len1 = strlen(str1);
Len2 = strlen(str2);
if ('\0' == *str1)
{
memcpy(strOutput, str2, Len2 + 1);
}
else if('\0' == *str2)
{
memcpy(strOutput, str1, Len1 + 1);
}
else
{
memcpy(strOutput, str1, Len1 + 1);
strcat(strOutput, str2);
}
//奇偶项排序
StringOddEvenSort(strOutput);
//BIT倒排
BITReverSort(strOutput);
}
- OJ
- OJ
- OJ
- OJ
- OJ
- OJ
- oj
- oj
- oj
- OJ
- OJ
- OJ
- OJ
- oj
- OJ和OJ平台
- OJ---N!
- UVa OJ
- OJ介绍
- android UC浏览器input的maxlength的bug
- 使用epoll实现客户端UDP并发
- How to add route in Linux
- Windows7开机密码破解,简单步骤学会怎么修改Win7登录密码
- [Android开发常见问题-8] 如何让两个按钮各占屏幕一半
- OJ
- 论MySQL的监控和调优
- 求解最长的波动序列
- NStimer延时
- 增快输入速度的scanf
- OJ
- web server 之一 WebLogic server 介绍
- linux下svn服务器使用详细
- VMware虚拟机中Linux实现无线上网