命名那個數字

2021-09-12 07:57:10 字數 648 閱讀 3288

p3864 [usaco1.2]命名那個數字 name that number

分析:此題本來有個極複雜的**,後來看了某位大佬的stl解法,感覺極為簡便自己寫了乙個,

採用*lower_bound指標操作學到了(其功能是查詢區間中匹配字串)

還有substr(n)b表示擷取第n個字元後的字串,(substr的一種用法)

#include#include#include#include#include#include#include#includeusing namespace std;

string s[5000],k[3*3*3*3*3*3*3*3*3*3*3*3+1];

string num,key[10]=;

int cnt,flag;

void dfs(string num,string result)

for(int i=0;i<3;i++)dfs(num.substr(1),result+key[num[0]-'0'][i]);

return ;

}int main()

dfs(num,"");

for(int i=0;i}

if(!flag)cout<<"none"

}

找出落單出現的那個數字

題目描述 乙個陣列除了某乙個數字只有乙個外,其餘的數字都是成對出現的 求出這個落單的數字 思路 使用異或的特性,可以抵消陣列中相同的數字,則剩下的哪個數字就是落單的數字 示例 乙個陣列除了某乙個數字只有乙個外,其餘的數字都是成對出現的 public class unique number integ...

演算法 找出陣列中未出現的那個數字

今天看到一道演算法題。將1 100這100個數字放入int這樣的陣列中。現在要找出哪個數字是沒有出現在陣列中的。你會怎麼做?1 大部分人的做法 一瞬間就能想到的方法是遍歷 兩個迴圈套在一起,遍歷每乙個數字是否出現在陣列中。這個方法時間複雜度是o n 2 2 稍微思考一下,可以給出另乙個做法 先將陣列...

求N 1 個數字中缺少的那個數值

給一串整數 0,1,2,n,其中乙個整數缺失。也就是說,如果是排序好放到大小為n的陣列中,其實最大的整數應該是n 1。你的任務和演算法是找出其中缺失的整數。如果是排序好的,怎麼做?如果是無序的,又該如何做?時間複雜度各是什麼?你能想到的最優演算法是什麼?動手寫下你的 吧。其實不用排序,把每個數字都加...