1. 문자열 내림차순으로 배치하기(https://school.programmers.co.kr/learn/courses/30/lessons/12917?language=c)
// c언어
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
char* solution(const char* s) {
int len = strlen(s);
char* answer = (char*)malloc(len);
memset(answer, 0, len);
strncat(answer, s, len);
int i = 0;
while(1)
{
if(len < i)
{
len--;
i = 0;
}
if(len == 0)
break;
if(answer[i] < answer[i + 1] && i + 1 < len)
{
char temp = answer[i];
answer[i] = answer[i + 1];
answer[i + 1] = temp;
}
i++;
}
return answer;
}
// js
function solution(s) {
var answer = '';
answer = s.split('').sort().reverse().join('')
return answer;
}
2. 부족한 금액 계산하기(https://school.programmers.co.kr/learn/courses/30/lessons/82612?language=c)
// c언어
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
long long solution(int price, int money, int count) {
long long answer = 0;
for(int i=1; i<=count; i++)
{
answer += price * i;
}
answer -= money;
if(answer < 0)
answer = 0;
return answer;
}
// js
function solution(price, money, count) {
var answer = 0;
for(var i=1; i<=count; i++)
{
answer += price * i;
}
answer -= money;
if(answer < 0)
answer = 0;
return answer;
}
3. 문자열 다루기 기본(https://school.programmers.co.kr/learn/courses/30/lessons/12918)
// c언어
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
bool solution(const char* s) {
bool answer = true;
int len = strlen(s);
if(len == 4 || len == 6)
{
for(int i=0; i<len; i++)
{
if('9' < s[i])
{
answer = false;
break;
}
}
}
else
answer = false;
return answer;
}
// js
function solution(s) {
var answer = true;
var len = s.length;
if(len == 4 || len == 6)
{
if(s == parseInt(s))
answer = true;
else
answer = false;
}
else
answer = false;
return answer;
}
이번 문제에서 JS 부분은 다른 사람의 답을 참고하여 풀었습니다. 이유는 코드 실행 땐 아무 문제가 없었지만, 제출을 할 때마다 테스트 11번에서 계속 오류가 생겼는데, 왜 그런가하니 JS는 숫자에 e가 붙으면 지수로 인식하여 문자를 숫자로 인식하기 때문이었습니다.
아래 코드는 오로지 저의 힘으로만 푼 답안입니다. 코드 실행 때는 문제가 없었으나 제출에서 막힌 녀석입니다.
// 오류 답안
function solution(s) {
var answer = true;
var len = s.length;
if(len == 4 || len == 6)
{
if(isNaN(s))
{
answer = false;
}
else
answer = true;
}
else
answer = false;
return answer;
}
'프로그래머스' 카테고리의 다른 글
24/07/29 알고리즘 문제 (0) | 2024.07.29 |
---|---|
24/07/16 SQL 문제 (0) | 2024.07.16 |
24/07/11 SQL 문제 (0) | 2024.07.11 |
24/07/09 SQL 문제 (0) | 2024.07.09 |
24/07/05 프로그래머스 알고리즘 (0) | 2024.07.05 |