C++ 分治思想 真假银币
2024-10-07 12:25:49
#include "stdio.h"
#include "iostream"
#define MAXNUM 30 int FalseCoin(int coin[], int low, int heigh)
{
int i, sum1, sum2, sum3;
int re; sum1 = sum2 = sum3 = ;
if (low + == heigh)
{
if (coin[low] < coin[heigh])
{
re = low + ;
return re;
}
else
{
re = heigh + ;
return re;
}
}
if ((heigh - low + ) % == ) //n是偶数
{
for (i = low; i < low+(heigh - low) / ; i++)
{
sum1 = sum1 + coin[i];
}
for (i = low + (heigh - low) / + ; i < heigh; i++)
{
sum2 = sum2 + coin[i];
}
if (sum1 > sum2)
{
re = FalseCoin(coin, low + (heigh - low) / + , heigh);
return re;
}
else
{
}
}
else
{
for (i = low; i < low+(heigh - low) / - ; i++)
{
sum1 = sum1 + coin[i];
}
for (i = low + (heigh - low) / + ; i < heigh; i++)
{
sum2 = sum2 + coin[i];
}
sum3 = coin[low + (heigh - low) / ];
if (sum1 > sum2)
{
re = FalseCoin(coin, low + (heigh - low) / + , heigh);
return re;
}
else if (sum1 < sum2)
{
re = FalseCoin(coin, low, low + (heigh - low) / - );
return re;
}
else
{
}
if (sum1 + sum3 == sum2 + sum3)
{
re = low + (heigh - low) / + ;
return re;
}
}
} int main()
{
int coin[MAXNUM];
int i, n;
int weizhi;
scanf("%d",&n);
for (i = ; i < n; i++)
{
scanf("%d",coin[i]);
}
weizhi = FalseCoin(coin, , n - );
printf("在上述%d个银币中,第 %d 个银币是假的!\n",n,weizhi);
system("pause");
return ;
}
最新文章
- 【.net 深呼吸】程序集的热更新
- (翻译)Emacs Hooks
- uva-10305
- 3.创建第一个android项目
- java小知识点
- JavaGUI——设置框架背景颜色和按钮颜色
- 推送XML
- HttpConnection方式访问网络
- leetcode 153. Find Minimum in Rotated Sorted Array --------- java
- protractor protractor.conf.js [launcher] Process exited with error code 1 undefined:1190
- H.264视频的RTP荷载格式
- 绑定运行计划sql_plan_baseline
- 小师妹问 easyUI mergeCells 行合并后表头和内容对不齐
- Eclipse中安装MemoryAnalyzer插件及使用
- 关于SPF记录的说明
- centos配置单网卡为Trunk模式
- Redmine基础: 邮件配置
- 十六、IDEA创建一个maven工程
- 如何在HTTP客户端与服务器端之间保持状态(转)
- linux下gflags的安装
热门文章
- xpath的几个常用规则
- ruby在类中访问@,类外访问调用方法
- day02-Javascript之document.write()方法
- websocket初体验
- 【OpenGL】---认识CubeTexture
- Java 语言的类、属性、方法各有哪些修饰符?简述各修饰符的区别
- MySQL数据类型-整型
- [Linux] 012 文件搜索命令
- [BZOJ3626] [LNOI2014]LCA(树链剖分)
- [JSOI2007]建筑抢修(贪心+后悔)