zoukankan      html  css  js  c++  java
  • LeetCode 67 Add Binary

    新颖之处:虽然代码十分清晰明了,但是这种书写方式、以及代码中变量的设置都是很值得学习的!
    // 二进制加法
    #include "stdio.h"
    #include "string.h"
    #include "stdlib.h"
    char* addBinary(char* a,char* b){
    	int lena = strlen(a) , lenb = strlen(b);
    	int lent = (lena > lenb ? lena : lenb) + 1;
    	int thirddig = 0 , leni = lent - 1;
    	char* tmp = (char*)malloc(lent + 1);
    	tmp[lent] = '';
    	for(int i=lena-1 , j=lenb-1 ; i>=0 || j>=0 ; i--,j--){
    		if (i>=0 && a[i]=='1')	thirddig++;
    		if (j>=0 && b[j]=='1') thirddig++;
    		tmp[leni--] = (thirddig%2) + '0' ;
    		thirddig  = thirddig >= 2 ? 1 : 0 ;
    	}
    	if(thirddig)	tmp[leni--] = thirddig + '0' ;
    	return tmp+leni+1;
    }
    int main(){
    	char s1[200],s2[200];
    	while(scanf("%s%s",&s1,&s2)!=EOF){
    		puts(addBinary(s1,s2));
    	}
    	return 0;
    }
    
  • 相关阅读:
    校赛writeup
    memory-300——Jarvis OJ
    校赛_warmup_pwn
    sctf
    iscc-pwn1
    level3-64——Jarvis OJ
    JarvisOJ——level2
    JarvisOJ——guestbook
    Javris oj——level0
    linux 服务器 tomcat环境部署出错 重启
  • 原文地址:https://www.cnblogs.com/WArobot/p/6694044.html
Copyright © 2011-2022 走看看