본문 바로가기

Problem Solving

(152)
평균은 넘겠지 #include #include #include #include #include using namespace std; int main() { int N, M, temp; double aver = 0; int member = 0; cin >> N; vector arr(N); for(int i = 0; i > M; for(int j = 0; j > temp; arr[i].push_back(temp); } aver = accumulate(arr[i].begin(), arr[i].end(), 0.0) / arr[i].size(); member = 0; for(int j = 0; j (int)(aver)) member++; } cout
음계 판별하기 #include #include #include using namespace std; int main() { vector arr(8); for(int i = 0; i > arr[i]; } int key = arr[0]
문자열 내 p와 y의 개수 #include #include using namespace std; int count(string s, char c) { int num = 0; for(int i = 0; i
스킬트리 #include #include #include using namespace std; int solution(string skill, vector skill_trees) { int answer = 0; int j = 0; if(skill.size() == 1) return skill_trees.size(); for(int a = 0; a 0; --i) { j = i - 1; auto first = find(skill_trees[a].begin(), skill_trees[a].end(), skill[i]); auto second = find(skill_trees[a].begin(), skill_trees[a].end(), skill[j]); if(first == skill_trees[a].end() && ..
나누어 떨어지는 숫자 배열 #include #include #include using namespace std; vector solution(vector arr, int divisor) { vector answer; vector no; no.push_back(-1); for(int i = 0 ; i
[Leetcode/C++] 66. Plus One class Solution { public: vector plusOne(vector& digits) { int carry = 1; for(int i = digits.size()-1; i >= 0; i--) { if(digits[i] == 9 && carry == 1) { digits[i] = 0; carry = 1; } else { digits[i] += carry; carry = 0; } } if(digits[0] == 0) digits.insert(digits.begin(), 1); return digits; } }; 논리설계 수업 때 2진수 ADDER를 만들던게 생각나는 문제였습니다. carry(올림 숫자)를 추가해 9일 때 올림 숫자를 받게 되면 올림 숫자는 그대로 가져가고 자리수는 0으로 바꿔주..
Pascal's Triangle class Solution { public: vector generate(int numRows) { vector arr; vector rows; for(int i = 0; i
[Leetcode/C++] 455. Assign Cookies class Solution { public: int findContentChildren(vector& g, vector& s) { sort(g.begin(), g.end()); sort(s.begin(), s.end()); int count = 0; for(int i = 0 ; i < g.size(); i++) { for(int j = 0 ; j < s.size(); j++) { if(g[i]