From 875f4f3dc766dbb19848db58350d4e5e10559ad8 Mon Sep 17 00:00:00 2001
From: linyongji <lyj18391569527@163.com>
Date: Mon, 18 Jan 2021 12:46:25 +0800
Subject: [PATCH] =?UTF-8?q?=E5=88=86=E6=94=AF9=E5=AE=8C=E6=88=90=E9=A2=98?=
 =?UTF-8?q?=E7=9B=AE=EF=BC=8C=E5=81=9A=E4=BA=86=E5=8D=95=E5=85=83=E6=B5=8B?=
 =?UTF-8?q?=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .gitignore                                    |   4 +++
 Alogrithm/.vs/Alogrithm/v16/.suo              | Bin 80384 -> 80384 bytes
 Alogrithm/Alogrithm/Alogrithm.vcxproj         |   3 ++
 Alogrithm/Alogrithm/Alogrithm.vcxproj.filters |   9 +++++
 Alogrithm/Alogrithm/config/9_AddBinary.ini    |  20 +++++++++++
 Alogrithm/Alogrithm/include/9_AddBinary.h     |   6 ++++
 Alogrithm/Alogrithm/src/9_AddBinary.cpp       |  32 ++++++++++++++++++
 Alogrithm/UnitTest/UnitTest.cpp               |  22 +++++++++++-
 Alogrithm/UnitTest/UnitTest.vcxproj           |   2 +-
 Alogrithm/UnitTest/pch.h                      |   1 +
 10 files changed, 97 insertions(+), 2 deletions(-)
 create mode 100644 Alogrithm/Alogrithm/config/9_AddBinary.ini
 create mode 100644 Alogrithm/Alogrithm/include/9_AddBinary.h
 create mode 100644 Alogrithm/Alogrithm/src/9_AddBinary.cpp

diff --git a/.gitignore b/.gitignore
index 056950b..629070a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -110,3 +110,7 @@ Alogrithm/.vs/Alogrithm/v16/TestStore/3/001.testlog
 Alogrithm/Alogrithm/Debug/7_MaxDepth.obj
 Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/5507929c4351e38d/8_HAMMINGWEIGHT.ipch
 Alogrithm/Alogrithm/Debug/8_HammingWeight.obj
+Alogrithm/.vs/Alogrithm/v16/TestStore/3/002.testlog
+Alogrithm/Alogrithm/Debug/9_AddBinary.obj
+Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/27a527fda8b54c6b/9_ADDBINARY.ipch
+Alogrithm/.vs/Alogrithm/v16/ipch/AutoPCH/d00489e06883ba57/9_ ADDBINARY.ipch
diff --git a/Alogrithm/.vs/Alogrithm/v16/.suo b/Alogrithm/.vs/Alogrithm/v16/.suo
index 19cc6de74295565349b93e19bf3c81d9f560e485..f1e99816617e0b0ba66a8f1626f5140bf6a894d8 100644
GIT binary patch
delta 7861
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

delta 6053
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
AhX4Qo

diff --git a/Alogrithm/Alogrithm/Alogrithm.vcxproj b/Alogrithm/Alogrithm/Alogrithm.vcxproj
index 2f9ea17..847bf41 100644
--- a/Alogrithm/Alogrithm/Alogrithm.vcxproj
+++ b/Alogrithm/Alogrithm/Alogrithm.vcxproj
@@ -148,6 +148,7 @@
     <ClCompile Include="src\6_ContainsDuplicate.cpp" />
     <ClCompile Include="src\7_MaxDepth.cpp" />
     <ClCompile Include="src\8_HammingWeight.cpp" />
+    <ClCompile Include="src\9_AddBinary.cpp" />
     <ClCompile Include="src\main.cpp" />
   </ItemGroup>
   <ItemGroup>
@@ -159,6 +160,7 @@
     <ClInclude Include="include\6_ContainsDuplicate.h" />
     <ClInclude Include="include\7_MaxDepth.h" />
     <ClInclude Include="include\8_HammingWeight.h" />
+    <ClInclude Include="include\9_AddBinary.h" />
   </ItemGroup>
   <ItemGroup>
     <None Include="config\1_ContainsNearbyDuplicate.ini" />
@@ -169,6 +171,7 @@
     <None Include="config\6_ContainsDuplicate.ini" />
     <None Include="config\7_MaxDepth.ini" />
     <None Include="config\8_HammingWeight.ini" />
+    <None Include="config\9_AddBinary.ini" />
   </ItemGroup>
   <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
   <ImportGroup Label="ExtensionTargets">
diff --git a/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters b/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters
index 4b6745b..61f2f35 100644
--- a/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters
+++ b/Alogrithm/Alogrithm/Alogrithm.vcxproj.filters
@@ -51,6 +51,9 @@
     <ClCompile Include="src\8_HammingWeight.cpp">
       <Filter>源文件\src</Filter>
     </ClCompile>
+    <ClCompile Include="src\9_AddBinary.cpp">
+      <Filter>源文件\src</Filter>
+    </ClCompile>
   </ItemGroup>
   <ItemGroup>
     <ClInclude Include="include\2_ExcelSheetColumnTitle.h">
@@ -77,6 +80,9 @@
     <ClInclude Include="include\8_HammingWeight.h">
       <Filter>头文件\include</Filter>
     </ClInclude>
+    <ClInclude Include="include\9_AddBinary.h">
+      <Filter>头文件\include</Filter>
+    </ClInclude>
   </ItemGroup>
   <ItemGroup>
     <None Include="config\3_bool IsUgly.ini">
@@ -103,5 +109,8 @@
     <None Include="config\8_HammingWeight.ini">
       <Filter>资源文件\config</Filter>
     </None>
+    <None Include="config\9_AddBinary.ini">
+      <Filter>资源文件\config</Filter>
+    </None>
   </ItemGroup>
 </Project>
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/config/9_AddBinary.ini b/Alogrithm/Alogrithm/config/9_AddBinary.ini
new file mode 100644
index 0000000..0342992
--- /dev/null
+++ b/Alogrithm/Alogrithm/config/9_AddBinary.ini
@@ -0,0 +1,20 @@
+[TEST1]
+input1=11
+input2=1
+output=100
+[TEST2]
+input1=1100
+input2=11
+output=1111
+[TEST3]
+input1=1100011
+input2=1001
+output=1101100
+[TEST4]
+input1=1100011
+input2=1000
+output=1101011
+[TEST5]
+input1=110001100
+input2=11
+output=110001111
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/include/9_AddBinary.h b/Alogrithm/Alogrithm/include/9_AddBinary.h
new file mode 100644
index 0000000..1382b1a
--- /dev/null
+++ b/Alogrithm/Alogrithm/include/9_AddBinary.h
@@ -0,0 +1,6 @@
+#pragma once
+#include <stdio.h>
+#include <string.h>
+#include <stdlib.h>
+
+char* AddBinary(char* a, char* b);
\ No newline at end of file
diff --git a/Alogrithm/Alogrithm/src/9_AddBinary.cpp b/Alogrithm/Alogrithm/src/9_AddBinary.cpp
new file mode 100644
index 0000000..fedc668
--- /dev/null
+++ b/Alogrithm/Alogrithm/src/9_AddBinary.cpp
@@ -0,0 +1,32 @@
+#include"../include/9_AddBinary.h"
+
+char* AddBinary(char* a, char* b)
+{
+	int len_a = strlen(a) - 1;//����ַ���a�ij���
+	int len_b = strlen(b) - 1;//����ַ���b�ij���
+	int carry = 0;//��λ��־
+	int len = len_a > len_b ? len_a : len_b;//��ȡ�����ַ����г��Ƚϳ�����һ��
+
+	char* pstr = (char*)malloc(sizeof(char) * (len + 3));//����һ��ָ����Ϊ����ֵ������������ռ���Ϊ�˷�ֹ�н�λ���ַ���β��־\0
+	if (NULL == pstr)
+		return NULL;
+	pstr[len + 2] = '\0';//���ַ���ĩβ��\0
+	len = len + 1;
+	while ((len_a >= 0) || (len_b >= 0)) {//ֻҪ�����ַ�����һ��û�����꣬���������������������ַ�����ĩβ��ʼ����
+		int sum = carry;//sum��������a[len_a]��b[len_b]��carry��ӵĽ����sum����Ϊ��0,1,2,3
+		sum += (len_a >= 0 ? a[len_a] - '0' : 0);
+		sum += (len_b >= 0 ? b[len_b] - '0' : 0);
+		carry = sum / 2;//��sum=2��3ʱ��Ҫ��λ��2��ʾ��a[a_len]��b[b_len]���Ҫ��λ��3��ʾ����һλ��Ҫ��λ
+		pstr[len] = '0' + sum % 2;//��pstr[len]��ֵ��
+		len_a--, len_b--, len--;
+	}
+	//�ж�Ҫ��Ҫ��ǰ��0
+	if (carry == 0) {
+		return (pstr + 1);//ָ���һ����ʾָ������ƶ����������������λ�Ļ�ָ���ָ���0����һλ��
+	}
+	else {
+		pstr[0] = '1';
+		return pstr;
+	}
+	//free(pstr);
+}
\ No newline at end of file
diff --git a/Alogrithm/UnitTest/UnitTest.cpp b/Alogrithm/UnitTest/UnitTest.cpp
index 041ba31..aec922b 100644
--- a/Alogrithm/UnitTest/UnitTest.cpp
+++ b/Alogrithm/UnitTest/UnitTest.cpp
@@ -10,7 +10,7 @@ using namespace Microsoft::VisualStudio::CppUnitTestFramework;
 #define FileName_6  "../Alogrithm/config/6_ContainsDuplicate.ini"
 #define FileName_7  "../Alogrithm/config/7_MaxDepth.ini"
 #define FileName_8  "../Alogrithm/config/8_HammingWeight.ini"
-
+#define FileName_9  "../Alogrithm/config/9_AddBinary.ini"
 
 
 namespace UnitTest
@@ -150,4 +150,24 @@ namespace UnitTest
 			}
 		}
 	};
+	TEST_CLASS(UnitTest_9)
+	{
+		TEST_METHOD(TestMethode1)
+		{
+			char Section_Name[100][10] = { 0 };
+			int  Section_Count = CalcCount(100, Section_Name, FileName_9);
+			CString input1,input2, output;	
+			for (int i = 0; i < Section_Count; i++) {
+				GetPrivateProfileString(Section_Name[i], "input1", " ", input1.GetBuffer(100), 100, FileName_9);
+				GetPrivateProfileString(Section_Name[i], "input2", " ", input2.GetBuffer(100), 100, FileName_9);
+				GetPrivateProfileString(Section_Name[i], "output", " ", output.GetBuffer(200), 200, FileName_9);
+				char p1[100];
+				char p2[100];
+				strcpy(p1, input1);
+				strcpy(p2, input2);
+				char* nReal = AddBinary(p1,p2);
+				Assert::AreEqual(nReal, output);
+			}
+		}
+	};
 }
diff --git a/Alogrithm/UnitTest/UnitTest.vcxproj b/Alogrithm/UnitTest/UnitTest.vcxproj
index f6b117a..f96836e 100644
--- a/Alogrithm/UnitTest/UnitTest.vcxproj
+++ b/Alogrithm/UnitTest/UnitTest.vcxproj
@@ -103,7 +103,7 @@
       <SubSystem>Windows</SubSystem>
       <AdditionalLibraryDirectories>$(VCInstallDir)UnitTest\lib;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
       <GenerateDebugInformation>DebugFull</GenerateDebugInformation>
-      <AdditionalDependencies>../Alogrithm/Debug/1_ContainsNearbyDuplicate.obj;../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;../Alogrithm/Debug/3_bool IsUgly.obj;../Alogrithm/Debug/4_IsPalindrome.obj;../Alogrithm/Debug/5_MinDepth.obj;../Alogrithm/Debug/6_ContainsDuplicate.obj;../Alogrithm/Debug/7_MaxDepth.obj;../Alogrithm/Debug/8_HammingWeight.obj;%(AdditionalDependencies)</AdditionalDependencies>
+      <AdditionalDependencies>../Alogrithm/Debug/1_ContainsNearbyDuplicate.obj;../Alogrithm/Debug/2_ExcelSheetColumnTitle.obj;../Alogrithm/Debug/3_bool IsUgly.obj;../Alogrithm/Debug/4_IsPalindrome.obj;../Alogrithm/Debug/5_MinDepth.obj;../Alogrithm/Debug/6_ContainsDuplicate.obj;../Alogrithm/Debug/7_MaxDepth.obj;../Alogrithm/Debug/8_HammingWeight.obj;../Alogrithm/Debug/9_AddBinary.obj;%(AdditionalDependencies)</AdditionalDependencies>
     </Link>
   </ItemDefinitionGroup>
   <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
diff --git a/Alogrithm/UnitTest/pch.h b/Alogrithm/UnitTest/pch.h
index accfddc..52a9d5c 100644
--- a/Alogrithm/UnitTest/pch.h
+++ b/Alogrithm/UnitTest/pch.h
@@ -21,6 +21,7 @@
 #include"../Alogrithm/include/6_ContainsDuplicate.h"
 #include"../Alogrithm/include/7_MaxDepth.h"
 #include"../Alogrithm/include/8_HammingWeight.h"
+#include"../Alogrithm/include/9_AddBinary.h"
 
 
 int CalcCount(int n, char(*str)[10],const char *FileName);