아스키코드4 백준 1213/c++ )) 팰린드롬 만들기 아스키 코드 범위 이상(127개 이상)의 배열 cnt[200] 을 만들고 입력한 문자열 s를 돌며 각 문자를 반복자가 가리킬때마다 cnt[가리킨 문자의 아스키코드 넘버]의 값을 1씩 더해주어 s의 문자별 개수 데이터를 저장한다 알파벳 뒤부터 안으로 가야하므로 Z부터 A까지 하나씩 빼며 더하여 수행한다 홀수 개수를 갖는 문자가 하나면 mid 를 만들어주고 홀수 개수를 갖는 문자가 2개 이상이면 탈출한다 빈 결과문부터 시작해서 양옆에 문자를 하나씩 붙여서 만들어주고 홀수개수 문자가 딱 하나 있어서 mid 가 있다면 결과문 시작부터 결과문 길이 반만큼의 위치에 mid를 삽입한다 홀수 개수를 갖는 문자가 2개 이상이면 실패문구를 출력하고, 그 외에는 정상 결과문을 출력한다 어려웠던 점 아스키 코드 비교를 위해 .. 2022. 6. 15. Null-terminated string 널 종단 문자열 Null 비어있음 + terminated string 끝내는 문자열 말그대로 null 을 써서 끝내는 문자열을 뜻한다 문자 인코딩 방법으로 ASCII (아스키 코드)를 사용하는 경우의 문자열을 표현할때 문자열은 각각의 영어 문자를 아스키코드에 매칭시켜서 메모리에 배열로 저장한다 문자열이 끝나면 이 뒤로 이상 뒤로 올 문자(=배열 값)이 없다는 것을 나타내기 위해서 문자열을 매칭, 변환한 마지막 아스키코드의 다음에 null을 써주어 이 뒤로 값이 없다는 것을 표현한다 null 의 아스키코드 는 0인데 이것을 숫자 0과 구분하기 위해서 이스케이프 문자 \0 으로 표현한다 이렇듯 아스키코드를 사용한 인코딩 문자열에서 메모리에 저장 시 문자열이 끝났음을 표현하기 위해 문자를 저장할 수 있는 1byte의 메모리에.. 2022. 5. 19. [JSP] 입출력 시의 문자 인코딩 그냥 서블릿 작성을 작성할 시 한글을 그대로 출력하도록 하면 글자가 깨진다 이는 프로그램의 기본 언어 인코딩이 한글을 인식할수있는 UTF-8 이 아니기 때문이다 영어권의 인코딩 방식이 기본인데 이는 1byte 당 문자 1개로 매칭되어 영어를 표현하기 때문이다 1바이트가 차면 바로 옛다 영어 하나다 하고 보내는 것이다 저번에 했던 아스키 코드가 여기서 쓰인다. bit 가 4개 모여 nibble 이라고 하고 2개의 nibble 이 모여 (= 8개의 bit가 모여) 1byte 를 이룬다 4개의 bit가 모인 nibble 은 16개의 경우의 수를 가질수있는데 이걸 이용해서 16진수로 표기를 할수있고, 16진수로 표현 시 0x를 앞에 붙이고 0부터 f 까지 16가지의 경우를 표기한다 1byte 는 2nibble .. 2022. 5. 17. [java][python][그 외...] escape 문자 다음과 같은 말을 출력하고 싶다 "호구마! '호박고구마!'" 자바에서 문자열을 출력하려면 system.out.print 또는 print 등을 통해 아래와 같이 출력가능하다 package tokkic.calendar; public class test1 { public static void main(String[] args) { System.out.println(""호구마! 호박고구마!'""); // excetion 발생!! } } print()는 메소드는 인자로 받는 문자열이 큰따옴표(") 로 감싸줘야 한다. 그런 규칙을 가진다 거기에 내가 쓰고싶은 말인 "호구마! '호박고구마!'"을 쓰려고 했을뿐인데 왜 예외가 뜰까? 큰따옴표 안에 큰따옴표가 또 와서 그렇다. 이러면 자바에서 헷갈려서 예외가 뜬다 이럴경.. 2022. 5. 17. 이전 1 다음