C언어/백준

10988번, 1157번

twoweeks-within 2024. 11. 13. 14:53

10988

앞뒤가 똑같다. > 절반만 비교하면 됨

홀수 : level > 시작 le , 끝 le만 비교하면됨

짝수 : abba : 시작 ab , 끝 ab 만 비교하면됨

>> strlen() / 2

>> 끝: word[len - i - 1] ( 배열은 0부터 시작)

 

// 정수 나누기에서 소수점은 버려짐, 5/2 = 2.5 > 2

// 배열은 null 이 없음

//  %s : 배열을 문자열로 취급함 > 자동으로 \0 (null) 추가

 

1157

1. 알파벳은 총 26개 > 배열 > 입력될때마다 ++ 

1-2. 입력은 문자 , 배열은 숫자 >  freq[in_char - 'a']

2. 배열이 max 보다 크면 max로 지정

3. max 와 같다면 대문자로 지정  // 출력조건

 >  result = i + 'A'; , result 를 char 로 하면 아스키 계산해서 문자로 저장

3-1. count ++

4. count >1 이면 max인게 2개 이상이므로 "?" 출력

5.

 

// tolower(word[i]) : 대소문자 > 소문자로 반환

// toupper              :      "         > 대문자로   "

// freq[c - 'a'] 배열 인덱스 아스키 계산

// result = i + 'A'; 

'C언어 > 백준' 카테고리의 다른 글

25206번  (1) 2024.11.13
2941번 , 1316번  (0) 2024.11.13
11718번  (0) 2024.11.10
5622  (0) 2024.11.09
2908 : 상수  (0) 2024.11.07