Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 레퍼럴
- Meta Quest3
- SWEA
- SOLID
- BOJ
- 삼성 SW 역량 테스트 기출 문제
- Java
- 재밌게 할래요
- 백준
- 11060
- level2
- 자료구조
- 알고리즘
- D3
- 이니셔티브 q
- 메타퀘스트3
- Initiative Q
- d4
- 리퍼럴
- 10505
- 점프 점프
- 프로그래머스
- 디자인패턴
- 블록
- 논블록
- Design Pattern
- D2
- C++
- 어싱크
- spring
Archives
- Today
- Total
아직은 정체성이 없는 블로그
[SWEA][D2][c++] 1945. 간단한 소인수분해 본문
문제
1945. 간단한 소인수분해
문제 링크
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5Pl0Q6ANQDFAUq
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
풀이 과정
1. 입력 받은 숫자를 2,3,5,7,11 순서대로 나머지값이 0이 아닐때까지 나누어준다.
2. 2,3,5,7,11의 각각 몇번 나누어 떨어졌는지 result[] 배열에 저장한다.
3. result 배열에 저장된 값을 출력한다.
코드
#include<iostream>
#include<cstring>
using namespace std;
int num[]={2,3,5,7,11};
int main(int argc, char** argv)
{
int result[5];
int test_case;
int T;
scanf("%d",&T);
for(test_case = 1; test_case <= T; ++test_case)
{
memset(result,0,sizeof(result));
int n;
scanf("%d",&n);
int flag=0;
while(flag<5){
if(n%num[flag]==0){
n/=num[flag];
result[flag]++;
}
else
flag++;
}
printf("#%d %d %d %d %d %d\n",test_case,result[0],result[1],result[2],result[3],result[4]);
}
return 0;
}
'알고리즘 역량테스트 문제 > SWEA' 카테고리의 다른 글
[SWEA][D3][c++] 6718. 희성이의 원근법 (0) | 2020.07.21 |
---|---|
[SWEA][D2][c++] 1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기 (0) | 2020.07.20 |
[SWEA][D2][c++] 1946. 간단한 압축 풀기 (1) | 2020.07.19 |
[SWEA][D2][c++] 1948. 날짜 계산기 (0) | 2020.07.19 |
[SWEA][D3][c++] 6913. 동철이의 프로그래밍 대회 (0) | 2020.07.18 |
Comments