입력 속도 비교

여러가지 언어와 입력 방법을 이용해서 시간이 얼마나 걸리는지 비교해 보았습니다.

방법: 첫째 줄에 정수의 개수 N (= 10,000,000), 둘째 줄부터 N개의 줄에 한 개의 자연수(10,000 이하)가 적힌 파일을 입력받는데 걸리는 시간을 측정. 10번 측정해서 평균값으로 순위를 매김

순위 언어 입력 방법 평균 (초)
1 C11 mmap 0.043
2 C11 fread 0.0799
3 C11 getchar 0.3496
4 C++17 ios_base::sync_with_stdio(false); cin.tie(NULL); 0.5938
5 C++17 ios_base::sync_with_stdio(false); 0.6348
6 Java BufferedReader, Integer.parseInt 0.6585
7 C11 scanf 0.9206
8 PyPy int(sys.stdin.readline()) 0.9229
9 PyPy map(int,os.read(0, 100000000).split('\n')) 1.1169
10 PyPy3 map(int,os.read(0, 100000000).decode('utf-8').split('\n')) 1.5408
11 PyPy int(raw_input()) 1.925
12 C++17 cin.tie(NULL); 2.059
13 C++17 cin 2.1742
14 C# 6.0 int.Parse(Console.ReadLine()) 2.9635
15 Python 3 map(int,os.read(0, 100000000).decode('utf-8').split('\n')) 4.4033
16 Python 3 int(sys.stdin.readline()) 4.4394
17 Java Scanner 4.8448
18 Python 2 map(int,os.read(0, 100000000).split('\n')) 4.8553
19 Python 2 int(sys.stdin.readline()) 5.7471
20 PyPy3 int(sys.stdin.readline()) 6.6291
21 Python 2 int(raw_input()) 8.9765
22 Python 3 int(input()) 12.4443
23 PyPy3 int(input()) 17.3772
24 Python 2 input() 37.7823
25 PyPy input() 110.3676

더 읽기댓글 쓰기

BOJ 101

BOJ 질문 게시판에서 활동하면서 "이건 모두가 알아야 할 것 같다"라고 생각한 것들을 적어 보려 합니다.

BOJ 작동 원리

모든 코드를 인공지능이 읽고 채점한다거나, 심지어는 백준님이 읽고 채점하신다고 생각하는 분들이 많은 것 같습니다. 전혀 그렇지 않습니다.

채점 서버에는 여러 쌍의 입력 파일과 출력 파일이 있습니다. (한 쌍일 수도 있습니다.) 코드를 제출하면 그 코드에 입력 파일에 적힌 대로 입력하고 나타나는 출력을 출력 파일과 비교합니다. 모든 입력/출력 파일에 대해 코드가 문제 없이 올바른 출력을 내야 합니다. 여기서 "올바름"이란 것은 단순히 정답과 같은 값이 아니라 같은 출력을 의미합니다. 예를 들어 45.0을 출력해야 하는데 45나 45.00을 출력하면 오답입니다.

더 읽기댓글 쓰기

2017 ACM ICPC Asia-Tsukuba Regional 후기

12월 16, 17일에 일본 츠쿠바에서 열린 ACM ICPC Tsukuba Regional에 다녀왔습니다!

이번 츠쿠바 리저널은 일본 43팀, 일본 외 7팀으로 총 50팀이 참가했습니다.

더 읽기댓글 쓰기

백준 온라인 저지에서 푼 문제 수와 codeforce rating간 관계 (개발기)

(선 스포 후 설명)

0. 서론

안녕하세요, BOJ의 데이터를 긁긁하면서 BOJ계의 OP.GG 개발을 꿈꾸는(?) 사람입니다.

더 읽기댓글 쓰기

컴파일 에러가 나시나요? (C/C++)

최근들어 컴파일에러로 오답을 받고 질문을 올리시는 분이 자주 보이는 것 같습니다.

주로 그 내용은 "비주얼 스튜디오에서는 되는 데 백준에서는 오류가 나네요" 등이더군요.

컴파일 에러를 해결하시는 데에 도움이 될 만한 글을 남기고자 합니다.

더 읽기댓글 쓰기

문자열 대회 간략한 풀이

https://www.acmicpc.net/contest/view/218

이 대회의 간략한 풀이를 적고자 합니다. 자세한 알고리즘 및 자료구조 설명은 생략했습니다.

문자열로 나올 수 있는 여러 종류의 문제가 있어서 문자열 연습하기 좋은 대회라고 생각합니다.

더 읽기댓글 쓰기

저는 Competitive programming이 싫습니다.

안녕하세요. zlzmsrhak입니다.

저번 크리스마스날 슬랙에 올라온 koosaga님의 코멘트를 보고 생각나는 것들이 있어서 말해보려고 합니다.

http://codeforces.com/blog/entry/49289#comment-332844

더 읽기댓글 쓰기

(펌) how to improve algorithm competition skill

(dreamoon이 본인 코드포스 블로그의 올렸던 글의 번역입니다.)

최근 1년 사이, 왜인지 모르겠지만 수많은 분들로부터 비슷한 문제로 고민이라는 메세지를 받았습니다. 그래서 이 블로그 글을 쓰기로 결심했어요.

더 읽기댓글 쓰기

2016 ACM ICPC Asia-Manila Regional 후기

12월 14일이 예비소집/등록이고 12월 15일이 본 대회였습니다. 12월 13일 오후에 공항에서 출발했습니다.

출국하는 날까지 기말고사와 텀 프로젝트를 하다가 와서 매우 피곤하였습니다. 마닐라 국제공항에서 숙소까지의 거리는 차로 30분 거리 정도인데, 실제로는 2시간이 걸릴만큼 필리핀은 교통 체증이 매우 심합니다. 숙소는 시험장인 Ateneo de Manila University에서 걸어서 5분 거리에 있는 Oracle Hotel & Residences 였습니다. 마닐라 시 전체에 서울 도심과 같은 교통체증이 나타나는데, 공항 근처는 특별히 더 심합니다. 기온은 20~30도 사이였고, 조금 습하고 덥습니다. 자동차 매연 냄새가 정말 심합니다. 필리핀에 밤 10시 쯤에 도착했고, 숙소에 도착하니 새벽 1시였습니다.

다음 날, 호텔 조식을 먹고 예비소집을 하러 갔습니다. 각 팀마다 도우미가 한 명씩 배정됩니다.

더 읽기댓글 쓰기

(펌) 프로그래밍 대회: C++11 이야기

알... 알면 편리하지 않을까요옷! 럭키이!~


#include <bits/stdc++.h>
using namespace std;

더 읽기댓글 쓰기