1 条题解
-
0
C++ :
#include<stdio.h> #include<algorithm> using namespace std; int main() { int a[6]; int n; while(scanf("%d",&n)!=EOF) { int co=1; for(int i=0;i<n;i++) { scanf("%d",&a[i]); co*=a[i]; } sort(a,a+n); int z=0; for(int i=a[n-2];i<co;i++) { int t=0; for(int j=0;j<n;j++) { if(i%a[j]==0)t++; } if(t==n-1) {z=i;break;} } if(z==0) printf("-1\n"); else printf("%d\n",z); } }
Java :
import java.io.OutputStreamWriter; import java.io.BufferedWriter; import java.io.OutputStream; import java.io.PrintWriter; import java.io.Writer; import java.util.List; import java.io.IOException; import java.util.Arrays; import java.util.InputMismatchException; import java.util.ArrayList; import java.util.NoSuchElementException; import java.math.BigInteger; import java.io.InputStream; /** * Built using CHelper plug-in * Actual solution is at the top * @author Laputa */ public class Main { public static void main(String[] args) { InputStream inputStream = System.in; OutputStream outputStream = System.out; InputReader in = new InputReader(inputStream); OutputWriter out = new OutputWriter(outputStream); Task solver = new Task(); solver.solve(1, in, out); out.close(); } } class Task { public void solve(int testNumber, InputReader cin, OutputWriter out) { while(cin.hasNext()){ int n=cin.nextInt(); int num[]=new int[n]; for(int i=0;i<n;i++){ num[i]=cin.nextInt(); } long ans=Long.MAX_VALUE; for(int i=0;i<n;i++){ long mul=1; for(int j=0;j<n;j++){ if(i==j) continue; mul=IntegerUtils.lcm(mul,num[j]); } if(mul%num[i]!=0) ans=Math.min(ans,mul); } if(ans!=Long.MAX_VALUE) out.println(ans); else out.println(-1); } } } class InputReader { private InputStream stream; private byte[] buf = new byte[1024]; private int curChar; private int numChars; private SpaceCharFilter filter; public InputReader(InputStream stream) { this.stream = stream; } public int read() { if (numChars == -1) throw new InputMismatchException(); if (curChar >= numChars) { curChar = 0; try { numChars = stream.read(buf); } catch (IOException e) { throw new InputMismatchException(); } if (numChars <= 0) return -1; } return buf[curChar++]; } public int peek() { if (numChars == -1) return -1; if (curChar >= numChars) { curChar = 0; try { numChars = stream.read(buf); } catch (IOException e) { return -1; } if (numChars <= 0) return -1; } return buf[curChar]; } public int nextInt() { int c = read(); while (isSpaceChar(c)) c = read(); int sgn = 1; if (c == '-') { sgn = -1; c = read(); } int res = 0; do { if (c < '0' || c > '9') throw new InputMismatchException(); res *= 10; res += c - '0'; c = read(); } while (!isSpaceChar(c)); return res * sgn; } public boolean isSpaceChar(int c) { if (filter != null) return filter.isSpaceChar(c); return isWhitespace(c); } public static boolean isWhitespace(int c) { return c == ' ' || c == '\n' || c == '\r' || c == '\t' || c == -1; } public boolean isExhausted() { int value; while (isSpaceChar(value = peek()) && value != -1) read(); return value == -1; } public boolean hasNext() { return !isExhausted(); } public interface SpaceCharFilter { public boolean isSpaceChar(int ch); } } class OutputWriter { private final PrintWriter writer; public OutputWriter(OutputStream outputStream) { writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(outputStream))); } public OutputWriter(Writer writer) { this.writer = new PrintWriter(writer); } public void print(Object... objects) { for (int i = 0; i < objects.length; i++) { if (i != 0) writer.print(' '); writer.print(objects[i]); } } public void println(Object... objects) { print(objects); writer.println(); } public void close() { writer.close(); } } class IntegerUtils { public static long gcd(long a, long b) { a = Math.abs(a); b = Math.abs(b); while (b != 0) { long temp = a % b; a = b; b = temp; } return a; } public static long lcm(long a, long b) { return a / gcd(a, b) * b; } }
- 1
信息
- ID
- 988
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- (无)
- 标签
- (无)
- 递交数
- 0
- 已通过
- 0
- 上传者