Bulls and Cows
来源:互联网 发布:dota2第一滴血数据bug 编辑:程序博客网 时间:2024/06/08 07:49
先说一下,这道题的意思,让你找到同一位的并且相同的数,总和为A,不同位相同的数总和为B,最后输出A,B的值。
这道题默认的是secret和guess位数一样的。
参考了大神的代码,学习了以下,写下思路:
进行循环
首先判断本次循环对应的位是否相同,如果相同,bull++;如果不同判断secret这位数在guess中是否出现,有的话cow++,在判断guess数是否在secret出现,有的话进行bull++;
判断的条件是namemap在secret出现则++;在guess出现则--;
如果namemap小于0,则说明这secret位数在guess出过了;如果大于0,则说明guess这位数在secret出现过了。
代码如下:
class Solution{public:string getHint(string secret,string guess){ int n1=secret.size();int namemap[10]={0};int bull=0,cow=0;for(int i=0;i<n1;i++){if(secret[i]==guess[i]) bull++;else{cow=(namemap[secret[i]-'0']<0)?cow+1:cow;namemap[secret[i]-'0']++;cow=(namemap[guess[i]-'0']>0)?cow+1:cow;namemap[guess[i]-'0']--;}}return to_string(bull)+"A"+to_string(cow)+"B";}};
0 0
- [LeetCode]Bulls and Cows
- [LeetCode] Bulls and Cows
- LeetCode Bulls and Cows
- [leetcode299]Bulls and Cows
- Bulls and Cows
- leetcode | Bulls and Cows
- Bulls and Cows
- LeetCode:Bulls and Cows
- LeetCode -- Bulls and Cows
- leetcode: Bulls and Cows
- [leetcode]Bulls and Cows
- Bulls and Cows
- Bulls and Cows
- 299. Bulls and Cows
- Bulls and Cows-LeetCode
- Leetcode191: Bulls and Cows
- [Leetcode]Bulls and Cows
- Bulls and Cows
- hdoj--5671--Matrix(思维)
- HDU 5245 Joyful 经典概率题目推公式
- C++面向对象 类的定义
- 模态与push导致弹出半透明背景不同
- 用Gradle构建时,将密码等敏感信息放在build.gradle之外
- Bulls and Cows
- 学生信息管理系统.servlet
- 《TCP/IP详解》学习笔记-第6/7/8章 ICMP/Ping/Traceroute
- Android 国际化
- iOS循环引用的三种场景
- iOS开发之处理网络图片的步骤
- c语言字符串
- 30分钟LINQ教程
- 【转】IOS NSTimer 定时器用法总结