Challenge
Careers
Class
Connect
로그인 후 문제풀이가 가능합니다.
c++ 18번 testcase만 오류뜨는데 이유가 뭔지 모르겠습니다!
#include <iostream> #include<vector> using namespace std; int main(void) { int n; cin >> n; vector<int> home(n); vector<int> cnt(n, 0); int max=-1; for(int i=0; i<n; i++){ cin >> home[i]; if(home[i] > max){ max = home[i]; } } for(int i=2; i<=max; i++){ for(int j=0; j<n; j++){ if(home[j]>0 && home[j]%i==0){ cnt[i]++; } } } int result=-1; for(int i=0; i<n; i++){ if(cnt[i] > result){ result = cnt[i]; } } cout << result << endl; return 0; }
자바 정답코드 공유합니다
import java.io.*; import java.util.*; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int n = Integer.parseInt(br.readLine()); // 집의 수 int[] heaterDiameterArr = new int[n]; String[] strArr = br.readLine().split(" "); int maxCnt = 0; int cnt = 0; for(int i=0; i<n; i++) { heaterDiameterArr[i] = Integer.parseInt(strArr[i]); ...
소수로 접근해서 TC 10,18,19 에러
안녕하세요, Softeer는 안 지 일주일도 안되었지만 좋은 문제가 많은 거 같아요 감사합니다~ 연탄 크기 문제 풀어보았는데요 결국 최소공배수 구하는 문제로 보여서 아래처럼 소수로 나누어 떨어지는지 확인하는 방법으로 접근해보았습니다. #include<iostream> #include<vector> #include<algorithm> using namespace std; int main(int argc, char** argv) { int input_num = 0; vector<int> prime_num = {2,3,5,7,11,13,17,19,23,29,31,37,41,43,47}; cin >> input_num; vector<int> house(input_num,0); vector<int> result(prime_num.size(),0); for(int i = 0; i < input_num; ++i){ ...
예외 케이스가 하나 있는데 뭘까요..?
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(); int arr[]=new int[n]; for(int i=0;i<n;i++){ arr[i]=sc.nextInt(); } Arrays.sort(arr); int max=Integer.MIN_VALUE; for(int i=arr[0];i<=arr[n-1];i++){ int count=0; for(int j=0;j<n;j++){ if(arr[j]%i==0)count++; ...
자바 정답 공유
import java.io.*; import java.util.*; /* * 1.난로의 반지름 길이가 연탄의 반지름 길이의 배수인 집에서만 연탄 사용 가능 * 2. n개의 집에 각가 놓여있는 난로의 반지름 길이가 주어졌을 때 * 3. 연탄의 반지름을 잘 설정해 최대한 많은 집에서 연탄을 사용할 수 있게 한다. */ public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] x = new int[n]; for(int i = 0; i < n; i++){ x[i] = sc.nextInt(); } sc.close(); int result = 0; Arrays.sort(x); int max = x[n-1]; for(int j = 2; j <= max; j++){ int compare = 0; for(int k = 0; k ...
이게 왜 안되는 걸까요,,,
import sys l = sys.stdin.readlines() output = [] l = list(map(int,l[1].rstrip('\n').split(' '))) for i in range(min(l),101): tmp = [v % i for v in l] output.append(tmp.count(0)) print(max(output)) 이대로 하면 1,2 번 빼고 다 런타임 에러네요.. 왜그런걸까요..? 일단 sys가 아니라 input()으로 하면 되긴 한데 9번은 오답이고요. 이것도 왜 그런지 혹시 알려주실 분 계신가요!ㅠ
C 언어 정답 코드 공유
#include <stdio.h> int max(int *a,int size){ int maxx=a[0]; for(int i=0;i<size;i++){ if(maxx<a[i]) { maxx=a[i]; } } return maxx; } int main(void) { int n; scanf("%d",&n); int hous_rad[n]; for(int i=0;i<n;i++){ scanf("%d",&hous_rad[i]); } int m=max(hous_rad,n); int count=0; int max_f=0; for(int i=2;i<m+1;i++){ //연탄의 반지름 i for(int j=0;j<n;j++){ if (hous_rad[j]%i==0){ count=count+1; } else count=count; } if (max_f<count) max_f=count; count=0; } printf("%d",max_f); return 0; } 더 간단히 풀 수 있다면 공유해쥬세여
파이썬 정답 코드 공유
import sys # 난로의 반지름 = n * (연탄의 반지름) number = int(input()) row_list = list(map(int, input().split())) count_init = 0 for i in range(2, 101): count = 0 for j in row_list: if j%i==0: count+=1 if count > count_init: count_init = count print(count_init)
스포 주의) 자바스크립트로 문제풀 때 조건을 추가로 넣어야 통과가 되네요
const readline = require('readline') const rl = readline.createInterface({ input: process.stdin, output: process.stdout }) const input = [] rl.on('line', (line) => { input.push(line) if(input.length === 2) { rl.close() } }).on('close', () => { let maxCount = 0; let houseSize = input[1].split(' ') if(houseSize.length === 1) { console.log(houseSize[0]) return; } for(let i = 2; i <= 100; i++) ...
10번 테스트 케이스만 통과가 안되는데 반레 부탁드립니다ㅠㅠ
import sys n = int(sys.stdin.readline()) li = list(map(int, sys.stdin.readline().split())) li.sort() res = 1 for i in range(2, li[-1]): tmp = 0 for j in li: if j % i == 0: tmp += 1 res = max(res, tmp) print(res)