時間限制: 1 sec 記憶體限制: 512 mb
提交: 10 解決: 2 [
提交][
狀態][
討論版]
題目鏈結
編制乙個乘法運算的程式。
從鍵盤讀入2個100以內的正整數,進行乘法運算並以豎式輸出。
輸入只有一行,是兩個用空格隔開的數字,均在1~99之間(含1和99)。
輸出為4行或7行,符合乘法的豎式運算格式。
89 13
89
×13
━━━
267
89
━━━
11573×89=267,則第四行267右側對準個位輸出。1×89=89,則第五行89右側對準十位輸出。267+890=1157,則1157右側對準個位輸出。
解題思路:
按照題目意思就是輸入兩個不大於100的整數,輸出他們的乘法豎式。我們知道乘法豎式要麼是4行,要麼是7行。
由於這是一道藍橋杯比賽題目,放到了自家的伺服器上,結果自家人在後台只給了輸入,輸出裡面什麼都沒有,於是我按照自己思路做了一下,給後台添了輸出資料。
後台測試資料如下:
sample.in
89 13
sample.out
89×13
━━━267
89━━━
1157
1.in
15 8
1.out
15×8
━━━120
2.in
25 40
2.out
25×40
━━━00
100━━━
1000
3.in
99 91
3.out
99×91
━━━99
891━━━
9009
4.in
99 99
4.out
99×99
━━━891
891━━━
9801
#include #include #include using namespace std;
int main()
if(k1!=0)
a[c1]=k1;
if(k2!=0)
b[c2]=k2;
for(i = 0; i < 3; i++)
if(b[i]!=-1)
break;
j = i;
for(;i<4;i++)
if(a[i]!=-1)
break;
else
printf(" ");
for(;i<4;i++)
printf("%d",a[i]);
printf("\n");
for(;j<3;j++)
printf("%d",b[j]);
printf("\n");
printf("━━━\n");
printf("%d\n",t1*t2);}}
return 0;
}
演算法提高 乘法運算
時間限制 1 sec 記憶體限制 512 mb 提交 18 解決 5 提交 狀態 討論版 編制乙個乘法運算的程式。從鍵盤讀入2個100以內的正整數,進行乘法運算並以豎式輸出。輸入只有一行,是兩個用空格隔開的數字,均在1 99之間 含1和99 輸出為4行或7行,符合乘法的豎式運算格式。89 1389 ...
演算法提高 矩陣乘法
問題描述 有n個矩陣,大小分別為a0a1,a1a2,a2a3,a n 1 a n 現要將它們依次相乘,只能使用結合率,求最少需要多少次運算。兩個大小分別為pq和qr的矩陣相乘時的運算次數計為pqr。輸入格式 輸入的第一行包含乙個整數n,表示矩陣的個數。第二行包含n 1個數,表示給定的矩陣。輸出格式 ...
演算法提高 矩陣乘法
問題描述 有 n 個矩陣,大小分別為 a0 a1,a1 a2,a2 a3,an 1 an,現要將它們依次相乘,只能使用結合率,求最少需要多少次運算。兩個大小分別為 p q 和 q r 的矩陣相乘時的運算次數計為 p q r。輸入格式 輸入的第一行包含乙個整數 n,表示矩陣的個數。第二行包含 n 1 ...