zoukankan      html  css  js  c++  java
  • ACM解题之素矩阵

    题意:

    如果一个矩形的两条边都是素数,则称此矩形为素矩形。本题给出一个素矩形的面积,请计算其两条边的值。有多个测试用例。每个用例占一行,包含一个表示素矩形面积且不超过 108 的正整数。输入直至没有数据为止。对于每个测试用例的素矩形,输出一行两个由小至大排列的整数,分别表示其边长。

    解题:

    因为题目的输入是个素矩形的面积,所以输入的数肯定只有两种分解(1,面积本身)(素矩形的宽,素矩形的长)。所以,我就用了简单粗暴的方法求解,如下:

    c++/accepted/296k/62ms

    #include<iostream>
    #include<cmath>
    using namespace std;
     
    int main() {
    	int n;
    	while (cin >> n)
    	{
    		for (int i = 2;i < sqrt(n) + 1;i++)  //因为矩形的长必小于或等于宽,所以只要遍历到sqrt(n)即可
    		{
    			if (n%i == 0)
    			{
    				cout << i << " " << n / i << endl;
    				break;
    			}
    		}
    	}
    	return 0;
    }

    【原创声明】转载请标明出处:https://www.cnblogs.com/surecheun/
  • 相关阅读:
    继承
    反射
    DOS使用笔记
    [LeetCode] Merge Intervals
    [LeetCode] Insert Interval
    [LeetCode] Permutation Sequence
    [LeetCode] Rotate List
    [LeetCode] Text Justification
    [LeetCode] Simplify Path(可以不用看)
    [LeetCode] Edit Distance(很好的DP)
  • 原文地址:https://www.cnblogs.com/surecheun/p/9648983.html
Copyright © 2011-2022 走看看