int generate_D(long long A)
{
int mod = 1000000007;
int count = 0;
vector<int> factors;
for (int i = 2; i <= sqrt(A); i++)
{
while (A % i == 0)
{
factors.push_back(i);
A /= i;
}
}
if (A > 1)
{
factors.push_back(A);
}
int B = 1;
vector<int> vec;
for (int factor : factors)
{
if (find(vec.begin(), vec.end(), factor) == vec.end())
{
vec.push_back(factor);
B *= factor;
}
}
int C = 1;
for (int i = 1; i <= sqrt(B); i++)
{
if (B % i == 0)
{
C *= i;
if (i != B / i)
C *= B / i;
}
}
for (int i = 1; i <= sqrt(C); i++)
{
if (C % i == 0)
count += (i != sqrt(C)) ? 2 : 1;
}
int D = count % mod;
return D;
}
Converting numbers
Google Girl (Hackathon)
C++โ
{
int mod = 1000000007;
int count = 0;
vector<int> factors;
for (int i = 2; i <= sqrt(A); i++)
{
while (A % i == 0)
{
factors.push_back(i);
A /= i;
}
}
if (A > 1)
{
factors.push_back(A);
}
int B = 1;
vector<int> vec;
for (int factor : factors)
{
if (find(vec.begin(), vec.end(), factor) == vec.end())
{
vec.push_back(factor);
B *= factor;
}
}
int C = 1;
for (int i = 1; i <= sqrt(B); i++)
{
if (B % i == 0)
{
C *= i;
if (i != B / i)
C *= B / i;
}
}
for (int i = 1; i <= sqrt(C); i++)
{
if (C % i == 0)
count += (i != sqrt(C)) ? 2 : 1;
}
int D = count % mod;
return D;
}
Converting numbers
Google Girl (Hackathon)
C++โ
int sumOfDigits(int num) {
int sum = 0;
while (num > 0) {
sum += num % 10;
num /= 10;
}
return sum;
}
int DifferenceSumOfDigits(int arr[], int n) {
int f1 = 0;
int f2 = 0;
for (int i = 0; i < n; i++) {
f1 += sumOfDigits(arr[i]);
f2 += arr[i];
}
f1 *= 10;
f1 -= f2;
f1 %= 10;
return f1;
}
C++
Accenture โ
int sum = 0;
while (num > 0) {
sum += num % 10;
num /= 10;
}
return sum;
}
int DifferenceSumOfDigits(int arr[], int n) {
int f1 = 0;
int f2 = 0;
for (int i = 0; i < n; i++) {
f1 += sumOfDigits(arr[i]);
f2 += arr[i];
}
f1 *= 10;
f1 -= f2;
f1 %= 10;
return f1;
}
C++
Accenture โ
int EvaluateExpression(char* expr) {
std::stack<int> numbers;
std::stack<char> operators;
int i = 0;
while (expr[i] != '\0') {
if (expr[i] == ' ') {
i++;
continue;
}
if (expr[i] >= '0' && expr[i] <= '9') {
int num = 0;
while (expr[i] >= '0' && expr[i] <= '9') {
num = num * 10 + (expr[i] - '0');
i++;
}
numbers.push(num);
} else if (expr[i] == '+'expr[i] == '/') {
while (!operators.empty() && ( operators.top () == '/' operators.top() == '+')) {
int num2 = numbers.top();
numbers.pop();
int num1 = numbers.top();
numbers.pop();
char op = operators.top();
operators.pop();
if (op == '/') {
numbers.push(num1 / num2);
} else if (op == '+') {
numbers.push(num1 + num2);
}
}
operators.push(expr[i]);
i++;
}
}
while (!operators.empty()) {
int num2 = numbers.top();
numbers.pop();
int num1 = numbers.top();
numbers.pop();
char op = operators.top();
operators.pop();
if (op == '/') {
numbers.push(num1 / num2);
} else if (op == '+') {
numbers.push(num1 + num2);
}
}
return numbers.top();
}
C++โ
Accenture
std::stack<int> numbers;
std::stack<char> operators;
int i = 0;
while (expr[i] != '\0') {
if (expr[i] == ' ') {
i++;
continue;
}
if (expr[i] >= '0' && expr[i] <= '9') {
int num = 0;
while (expr[i] >= '0' && expr[i] <= '9') {
num = num * 10 + (expr[i] - '0');
i++;
}
numbers.push(num);
} else if (expr[i] == '+'
while (!operators.empty() && (
int num2 = numbers.top();
numbers.pop();
int num1 = numbers.top();
numbers.pop();
char op = operators.top();
operators.pop();
if (op == '/') {
numbers.push(num1 / num2);
} else if (op == '+') {
numbers.push(num1 + num2);
}
}
operators.push(expr[i]);
i++;
}
}
while (!operators.empty()) {
int num2 = numbers.top();
numbers.pop();
int num1 = numbers.top();
numbers.pop();
char op = operators.top();
operators.pop();
if (op == '/') {
numbers.push(num1 / num2);
} else if (op == '+') {
numbers.push(num1 + num2);
}
}
return numbers.top();
}
C++โ
Accenture
๐๐ฆ ๐๐น๐ด๐ผ ๐ป ๐ ใ๐๐ผ๐บ๐ฝ๐ฒ๐๐ถ๐๐ถ๐๐ฒ ๐ฃ๐ฟ๐ผ๐ด๐ฟ๐ฎ๐บ๐บ๐ถ๐ป๐ดใ
int EvaluateExpression(char* expr) { std::stack<int> numbers; std::stack<char> operators; int i = 0; while (expr[i] != '\0') { if (expr[i] == ' ') { i++; continue; } if (expr[i] >= '0' && expr[i]โฆ
๐1
int LetteredNumberSum(char* str, int len) {
if (str == nullptr) {
return 0;
}
int sum = 0;
for (int i = 0; i < len; i++) {
char letter = str[i];
int ans = 0;
switch (letter) {
case 'A':
ans = 1;
break;
case 'B':
ans = 10;
break;
case 'C':
ans = 100;
break;
case 'D':
ans = 1000;
break;
case 'E':
ans = 10000;
break;
case 'F':
ans = 100000;
break;
case 'G':
ans = 1000000;
break;
default:
ans = 0;
break;
}
sum += ans;
}
return sum;
}
C++โ
if (str == nullptr) {
return 0;
}
int sum = 0;
for (int i = 0; i < len; i++) {
char letter = str[i];
int ans = 0;
switch (letter) {
case 'A':
ans = 1;
break;
case 'B':
ans = 10;
break;
case 'C':
ans = 100;
break;
case 'D':
ans = 1000;
break;
case 'E':
ans = 10000;
break;
case 'F':
ans = 100000;
break;
case 'G':
ans = 1000000;
break;
default:
ans = 0;
break;
}
sum += ans;
}
return sum;
}
C++โ
int AddDistinctSubDuplicate(int a, int b, int c, int d) {
int sumDistinct = 0;
int duplicateNumber = 0;
// Calculate sum of distinct numbers
if (a != b && a != c && a != d) {
sumDistinct += a;
}
if (b != a && b != c && b != d) {
sumDistinct += b;
}
if (c != a && c != b && c != d) {
sumDistinct += c;
}
if (d != a && d != b && d != c) {
sumDistinct += d;
}
// Find the duplicate number
if (a == b && a != c && a != d) {
duplicateNumber = a;
}
if (a == c && a != b && a != d) {
duplicateNumber = a;
}
if (a == d && a != b && a != c) {
duplicateNumber = a;
}
if (b == c && b != a && b != d) {
duplicateNumber = b;
}
if (b == d && b != a && b != c) {
duplicateNumber = b;
}
if (c == d && c != a && c != b) {
duplicateNumber = c;
}
int result = sumDistinct - duplicateNumber - 308;
return result;
}
C++โ
int sumDistinct = 0;
int duplicateNumber = 0;
// Calculate sum of distinct numbers
if (a != b && a != c && a != d) {
sumDistinct += a;
}
if (b != a && b != c && b != d) {
sumDistinct += b;
}
if (c != a && c != b && c != d) {
sumDistinct += c;
}
if (d != a && d != b && d != c) {
sumDistinct += d;
}
// Find the duplicate number
if (a == b && a != c && a != d) {
duplicateNumber = a;
}
if (a == c && a != b && a != d) {
duplicateNumber = a;
}
if (a == d && a != b && a != c) {
duplicateNumber = a;
}
if (b == c && b != a && b != d) {
duplicateNumber = b;
}
if (b == d && b != a && b != c) {
duplicateNumber = b;
}
if (c == d && c != a && c != b) {
duplicateNumber = c;
}
int result = sumDistinct - duplicateNumber - 308;
return result;
}
C++โ
#include <bits/stdc++.h>
using namespace std;
void solve(int k) {
string s = to_string(k);
int v[] = {2,3,4,5,6};
cout<< ((s[0] - '0') - 1) * 10 + v[s.length()] << endl;
}
int main() {
int k =4 ; N = 5;
solve(k);
return 0;
}
C++โ
Accenture
using namespace std;
void solve(int k) {
string s = to_string(k);
int v[] = {2,3,4,5,6};
cout<< ((s[0] - '0') - 1) * 10 + v[s.length()] << endl;
}
int main() {
int k =4 ; N = 5;
solve(k);
return 0;
}
C++โ
Accenture
Python 3
Accenture โ
Accenture โ