#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);
}
C++——求假币【三分法】
原创
©著作权归作者所有:来自51CTO博客作者瑞新的博客的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
UVA 1476 - Error Curves(三分法)
码: #
#include i++ 极值 -
HDU 2438 Turn the corner 三分法
Problem DescriptionMr. West bought
HDOJ ACM HDU 2438 #include -
三分法
模板(p3382)
#include ios C语言 C