扑克牌中的顺子(网易2014.3.16笔试offerP226)
2024-08-30 06:30:17
题目:从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J~K为11,12,13,而大小王可以看成任意数字。(网易要求必须用C完成,可以用C库函数)
java代码:
//扑克牌中的顺子。通过测试
//随机5张牌,大小王代表任意数
import java.util.*;
public class PlayingCards{
public static void main(String[] args){
int data[]={5,7,8,9,0};
System.out.println(playingCards(data));
}
public static boolean playingCards(int data[]){
if(data==null||data.length<1){
return false;
}
int gap = 0;
int kings = 0 ;
Arrays.sort(data);
for(int i=0; i<data.length&&data[i]==0; i++){
kings++;
}
int j=kings;
while(j<data.length-1){
if(data[j]==data[j+1]){
return false;
}
gap+=data[j+1]-data[j]-1;//!!! +=
j++;
}
return (kings>=gap)?true:false;
}
}
c代码:
#include <iostream>
#include <stdio.h>
using namespace std;
//自己写的代码,大小王看成是0
int compare(const void *arg1, const void *arg2)
{
return *(int*)arg1-*(int*)arg2;
}
void isContinuous(int *array,int size)
{
if(array==NULL||size<)
{
cout<<"wrong input!"<<endl;
return;
}
qsort(array,size,sizeof(int),compare);//C的库函数,排序,时间复杂度O(nlogn)
int gap=;
int king=;
for(int i=;i<size;i++)
{
if(array[i]==){
king++;
}
else if(i<size-)
{
if(array[i]==array[i+])//有相同点数的时候,不可能是顺子
{
cout<<"not continuous!"<<endl;
return;
}
else
{
gap+=(array[i+]-array[i]-);
}
} }//for
if(gap>king)
{
cout<<"not continuous!"<<endl;
return;
}
else
{
cout<<"is continuous!"<<endl;
return;
}
}
int main(){
int array[]={,,,,};
isContinuous(array,sizeof(array)/sizeof(int));
}
最新文章
- php创建新用户注册界面布局实例
- ASP.NET收发邮件
- ZOJ 3878--解题报告
- struct ifreq结构体与ip,子网掩码,网关等信息
- Winform-CheckBox、ChecklistBox控件遍历代码
- BZOJ 3505 CQOI 2014 数三角形 数学
- Apache自带 ab压测工具 Windows配置使用说明 - 随笔记录
- mysql进阶(二)索引简易教程
- flex-手机端主页布局实例---构造页面结构
- 神经网络_线性神经网络 2 (Nerual Network_Linear Nerual Network 2)
- [物理学与PDEs]第5章习题6 各向同性材料时强椭圆性条件的等价条件
- 2018-2019-2 20165236 《网络对抗技术》Exp4 恶意代码分析
- 实现两线程的同步二(lockSupport的park/unpark)
- OpenCV自带dnn的Example研究(4)— openpose
- 第三篇 功能实现(2) (Android学习笔记)
- 设计模式之观察者模式(Observer)(4)
- Delphi 的内存操作函数(5): 复制内存
- java在注解中绑定方法参数的解决方案
- Makefile详解
- ArcGIS API for JavaScript开发笔记(一)——ArcGIS for Javascript API 3.14本地部署