10 条题解

  • 5
    @ 2022-7-9 17:25:02
    #include <bits/stdc++.h>
    using namespace std;
    int main () {
        int num;
        cin >> num;
        for (int i = 2; i <= num; i++) {    //核心代码
            while (num != i) {    //先确定num不等于2
                if (!(num % i)) {    //当num / i没有余数时,说明i是num的一个质数
                    cout << i << "*";    //输出i
                    num /= i;    //取num/i整数部分
                } else {
                    break;    //然后跳出,重新来,此时num变了,i也变成2了,因为重新开始
                }
            }  
        }
        cout << num << endl;
        system("pause");
        return 0;
    }
    
    • @ 2023-8-7 10:59:30

      666666 全部测评的时间小于我一个点的时间全部测评的时间小于我一个点的时间😄 👍

  • 2
    @ 2025-3-5 12:49:23
    a=int(input())
    for i in range(2,a+1):
        while i!=a:
            if a%i==0:
               print(i,end="*")
               a=a/i
            else:
                break
    print(int(a))
    
    
    • 1
      @ 2025-4-9 11:53:33
      a = int(input())
      b = 2
      c = ""
      while b < a:
          if a == 1:
              break
          if a % b == 0:
              c +=str(b)+"*"
              a = a/b
              b = 1
          b+=1
      if a ==1:
          c = "1"
      else:
          c += str(b)
      print(c)
      
      
      

      我是sb

      • 0
        @ 2025-5-12 14:41:23

        • 0
          @ 2025-4-20 17:11:49
          x=int(input())
          if x==1:
              print(1)
          s=''
          i=2
          while x!=1:
              if x%i==0:
                  if x/i==1:
                      s=s+str(i)
                      x=x/i
                  else:
                      s=s+str(i)+'*'
                      x=x/i
              else:
                  i+=1
          print(s)
          
          • 0
            @ 2024-7-13 20:29:47

            python简单易懂,先预处理1000以内素数,再分解,1要特判

            prim=[]
            prim.append(2)
            prim.append(3)
            for i in range(5,1001):
                flag=1
                for j in range(2,int(i**0.5)+1):
                    if i%j==0:
                        flag=0
                        break
                if flag :
                    prim.append(i)
            n=int(input())
            t=0
            flag=False
            f=(n==1)
            while n>=2 or t>1000:
                if flag==True:
                    print("*",end="")
                    flag=False
                if n%prim[t]==0:
                    n/=prim[t]
                    print(prim[t],end="")
                    flag=True
                else:
                    t+=1
            if f==True:
                print(1)
            
            • 0
              @ 2023-8-7 13:18:22
              n=n0=int(input())
              if n<4:
                  print(n)
              else:
                  for i in range(2,n0+1):
                      for j in range(i,n0+1):
                          while n%j==0:
                              if n//j!=1:
                                  print(j,end='*')
                              else:
                                  print(j)
                              n /= j
                          break
              
              • 0
                @ 2023-7-15 14:10:53

                n=int(input())
                for i in range(2,n+1):
                    while n!=i:
                        if n%i==0:
                            print(i,end='*')
                            n=n/i
                        else:
                            break
                print(int(n))
                
                • -2
                  @ 2023-8-13 11:57:43

                  python的哦(内涵内含部分草稿)

                  x=int(input())#输入的数字
                  
                  x1=x//2#框定范围
                  
                  a=0
                  
                  aa=0
                  
                  z=1
                  
                  y=[]#装垃圾
                  
                  if x==1:
                  
                      print(1)
                  
                      z=0
                  
                  
                  for i in range(2,x1):
                  
                      while x%i==0:
                  
                          x=x//i
                  
                          y.append(i)#装入数字(一次)
                  
                  
                  for i in y:
                  
                      
                  
                      a+=1
                  
                  
                  if a==0 and z==1:
                  
                      print(x)
                  
                  
                  if z==1:
                  
                      
                  
                      for i in y:
                  
                          aa+=1
                  
                          if a==aa:
                  
                              print(i)
                  
                              break
                  
                          print(i,end="\*")
                  
                  • -3
                    @ 2023-7-18 10:44:25
                    #include <iostream>
                    
                    using namespace std;
                    bool flag=true;
                    int x;
                    
                    int main()
                    {
                      cin>>x;
                      for (int i=2;i<=x+1;)
                      {
                        if (x%i==0)
                        {
                          if (flag==true)
                          {
                            cout<<i;
                            flag=false;
                          }else
                          {
                            cout<<"*"<<i;
                          }
                          x = x/i;
                          if (x==1)
                          {
                            break;
                          }
                        }else
                        {
                          if (x==1)
                          {
                            cout<<1;
                            break;
                          }else
                          {
                            i+=1;
                          }
                        }
                      }
                      return 0;
                    }
                    
                    • @ 2023-7-18 10:45:14

                      有一说一,打多了性质就变了

                  • 1

                  信息

                  ID
                  69
                  时间
                  1000ms
                  内存
                  128MiB
                  难度
                  6
                  标签
                  递交数
                  2205
                  已通过
                  611
                  上传者