前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C++——求假币【三分法】

C++——求假币【三分法】

作者头像
瑞新
发布2020-07-07 18:28:58
7580
发布2020-07-07 18:28:58
举报
代码语言:javascript
复制
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
    const int N = 8;
    int a[N] = {2,2,2,2,2,1,2,2};
int Coin(int low,int high, int n);
int main()
{
    cout << "Hello world!" << endl;
    int addr = 0;
    addr = Coin(1,7,7);
    printf("%d", addr);

    return 0;
}
int Coin(int low,int high, int n)
{
    int i, num1, num2, num3;
    int add1 = 0 ,add2 = 0;
    if(n == 1)
        return low+1;
    if(n % 3 == 0)
        num1 = num2 = n/3;
    else
        num1 = num2 = n / 3 + 1;
    num3 = n - num1 - num2;
    for(i = 0; i < num1; i++)
        add1 = add1 + a[low + i];
    for(i = num1; i<num1 + num2; i++)
        add2 = add2 + a[low+i];
    if(add1 < add2)
        return Coin(low, low+num1-1, num1);
    else if(add1 > add2)
        return Coin(low + num1, low + num1 + num2 - 1, num2);
    else
        return Coin(low+num1+num2, high ,num3);

}
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-04-11 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档