codeup之特殊乘法
生活随笔
收集整理的這篇文章主要介紹了
codeup之特殊乘法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Description
寫個算法,對2個小于1000000000的輸入,求結果。特殊乘法舉例:123 * 45 = 14 +15 +24 +25 +34+35
Input
兩個小于1000000000的數
Output
輸入可能有多組數據,對于每一組數據,輸出Input中的兩個數按照題目要求的方法進行運算后得到的結果。
Sample Input Copy
24 65
42 66666
3 67
Sample Output Copy
66
180
39
solution(取出每位
#include <stdio.h>
int getNum(int a, int a1[]){
int i = 0;
while(a){
a1[i++] = a % 10;
a /= 10;
}
return i;
}
int main(){
int a, b, a1[10], b1[10], mul, temp;
while(scanf("%d%d", &a, &b) != EOF){
mul = 0;
int n1 = getNum(a, a1), n2 = getNum(b, b1);
for(int i = 0; i < n1; i++){
for(int j = 0; j < n2; j++){
mul += a1[i] * b1[j];
}
}
printf("%d\n", mul);
}
return 0;
}
solution(把輸入作為字符串處理
#include <stdio.h>
int getNum(int a, int a1[]){
int i = 0;
while(a){
a1[i++] = a % 10;
a /= 10;
}
return i;
}
int main(){
int a, b, a1[10], b1[10], mul, temp;
while(scanf("%d%d", &a, &b) != EOF){
mul = 0;
int n1 = getNum(a, a1), n2 = getNum(b, b1);
for(int i = 0; i < n1; i++){
for(int j = 0; j < n2; j++){
mul += a1[i] * b1[j];
}
}
printf("%d\n", mul);
}
return 0;
}
總結
以上是生活随笔為你收集整理的codeup之特殊乘法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: OpenStack 全套搭建部署指南(基
- 下一篇: 基于预生成 QA 对的 RAG 知识库解