-
二进制中1的个数
输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。 class Solution { public: int NumberOf1(int n) { int count = 0; while (n != 0) { ++count; n = (n 1) & n; } return coun -
变态跳台阶
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 class Solution { public: void dfs(int number,int &res,int count){ if(count number){ return; } -
循环删除元素,返回最后一个被删除元素的下标
输入一个整数n(n大于等于2,小于等于1000),则从i=2开始每隔两个元素在数组arr[n]中删除该元素,可以在数组中循环,请返回最后一个被删除元素的下标: include include using namespace std; int search(int n){ vectorvisited( -
阿拉伯数字转中文大写
代码如下: include include include include include include using namespace std; string Converttochinese(string& a,vector&p,vector&q,map&ma){ string res_rig -
最长相同子串
给定两个字符串,输出最长相同子串: 方法1:暴力破解 include include include include include using namespace std; string lagestcommonsubset(const string &a,const string &b){ in -
最多购买种类
给定一个代表商品价格的数组和一个代表拥有现金的整数,求出现金最多能购买多少种商品: include include include include using namespace std; int maxKind(vectorarr,int money){ int res; sort(arr.beg -
阿拉伯数字转化为中文(缩写)数值
阿拉伯数字转化为中文(缩写)数值: include include include include using namespace std; string tostring(int a){ stringstream ss; ss res; return res; } int main(){ int -
人员分组问题
人员分组,一共有n个人,输入每个人认识的人名单,若a的名单里有b或者b的名单里有a,则a和b互相认识,若a认识b,b认识c,则通过介绍,a也会认识c,请你把所有人员进行分组,每组中的人都能够互相认识,且分组数最小。 思路:两次遍历,一次用逆邻接表,一次用邻接表,分组数取两次的最小值。 include -
字符串行走得分
游戏规则,给定一个字符串数组,初始行走方向向右,每经过一个自然数,得分加上自然数,自然数减一,遇到 则行走方向向右,或者, include include include include include using namespace std; string tostring(int a){ str -
软件工程实践2019(春)总结
软件工程实践作业情况(2019春) 序号 | 起止时间 | 博客作业 |成绩排名 | 优秀作业/问题 | | | | 1 | 寒假 2.24|开设博客+ "准备篇" | | | 2| 3.1 3.8|结对第一次— "原型设计 文献摘要热词统计" | "结对第一次成绩排名" | 3|3.9 3.15|