大家好,我是晴天學(xué)長,這是第二周的藍(lán)橋杯的雙周賽,題可出的又好又靈活??!真不錯!??????
1) .鋪地板
2) .算法思路
1.導(dǎo)入java.util包中的Scanner類,以從用戶那里讀取輸入。
2.main方法是程序的入口點(diǎn)。
3.創(chuàng)建一個Scanner對象,用于從標(biāo)準(zhǔn)輸入讀取輸入。
4.從用戶那里讀取一個整數(shù)n,表示測試用例的數(shù)量。
5進(jìn)入一個循環(huán),循環(huán)n次。
6.在循環(huán)內(nèi)部,從用戶那里讀取兩個整數(shù)a和b,表示要鋪磚的區(qū)域的尺寸。
7.檢查特殊情況,例如當(dāng)a或b小于2,或者a和b都小于3時,無法鋪磚。如果滿足任何這些條件,打印"No"并繼續(xù)下一次循環(huán)迭代。
8.如果不滿足特殊情況,檢查區(qū)域是否可以鋪磚,通過檢查a和b的乘積是否可以被6整9.除(2x1和3x1磚塊的總面積為6)。
10如果可以鋪磚,打印"Yes";否則,打印"No"。
11.循環(huán)結(jié)束后,程序結(jié)束。文章來源:http://www.zghlxwxcb.cn/news/detail-719861.html
3).代碼示例
import java.util.Scanner;
// 1:無需package
// 2: 類名必須Main, 不可修改
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
for (int i = 0; i < n; i++) {
int a = scanner.nextInt();
int b = scanner.nextInt();
//特殊情況
if (Math.max(a, b) < 3 || Math.min(a, b) < 2) {
System.out.println("No");
continue;
}
//開始鋪
if ((a * b) % 6 == 0) {
System.out.println("Yes");
}
else {
System.out.println("No");
}
}
}
}
4).總結(jié)
- 注意特殊情況的判定。
試題鏈接:文章來源地址http://www.zghlxwxcb.cn/news/detail-719861.html
到了這里,關(guān)于藍(lán)橋杯雙周賽算法心得——鋪地板(質(zhì)因數(shù))的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!